diff --git a/app/Controller/ExportController.php b/app/Controller/ExportController.php
index a7689673135f1acaefe47bcbdb924e451d5bea62..a405a461cdb90e1d57e8b20f52a3c69348fdbb87 100644
--- a/app/Controller/ExportController.php
+++ b/app/Controller/ExportController.php
@@ -32,7 +32,7 @@ class ExportController extends BaseController
             if ($from && $to) {
                 $data = $this->$model->$method($project['id'], $from, $to);
                 $this->response->withFileDownload($filename.'.csv');
-                $this->response->csv($data);
+                $this->response->csv($data, $this->request->getRawValue('bom') === '1');
             }
         } else {
             $this->response->html($this->template->render('export/'.$action, array(
@@ -86,7 +86,7 @@ class ExportController extends BaseController
                 $to = $this->dateParser->getIsoDate($to);
                 $data = $this->projectDailyColumnStatsModel->getAggregatedMetrics($project['id'], $from, $to);
                 $this->response->withFileDownload(t('Summary').'.csv');
-                $this->response->csv($data);
+                $this->response->csv($data, $this->request->getRawValue('bom') === '1');
             }
         } else {
             $this->response->html($this->template->render('export/summary', array(
diff --git a/app/Core/Csv.php b/app/Core/Csv.php
index fdff9fe045a5d920c54c34ab4feee7f78b3a43c8..f93e9781fed41a1e0cc6481f287adb0780e30dbd 100644
--- a/app/Core/Csv.php
+++ b/app/Core/Csv.php
@@ -106,11 +106,12 @@ class Csv
      * @static
      * @access public
      * @param  array  $rows
+     * @param  bool   $addBOM
      */
-    public static function output(array $rows)
+    public static function output(array $rows, $addBOM = false)
     {
         $csv = new static;
-        $csv->write('php://output', $rows);
+        $csv->write('php://output', $rows, $addBOM);
     }
 
     /**
@@ -160,13 +161,18 @@ class Csv
      * @access public
      * @param  string    $filename
      * @param  array     $rows
+     * @param  bool      $addBOM
      * @return Csv
      */
-    public function write($filename, array $rows)
+    public function write($filename, array $rows, $addBOM = false)
     {
         $fp = fopen($filename, 'w');
 
         if (is_resource($fp)) {
+            if ($addBOM) {
+                fwrite($fp, "\xEF\xBB\xBF");
+            }
+
             foreach ($rows as $row) {
                 fputcsv($fp, $row, $this->delimiter, $this->enclosure);
             }
diff --git a/app/Core/Http/Response.php b/app/Core/Http/Response.php
index 0af763a6c231749081ff26d06d3170d00f4590b1..720dfaef6c6a3ccb00604ada90958c2da8173cca 100644
--- a/app/Core/Http/Response.php
+++ b/app/Core/Http/Response.php
@@ -291,14 +291,15 @@ class Response extends Base
      * Send a CSV response
      *
      * @access public
-     * @param  array  $data  Data to serialize in csv
+     * @param  array  $data    Data to serialize in csv
+     * @param  bool   $addBOM  Add BOM header
      */
-    public function csv(array $data)
+    public function csv(array $data, $addBOM = false)
     {
         $this->withoutCache();
         $this->withContentType('text/csv; charset=utf-8');
         $this->send();
-        Csv::output($data);
+        Csv::output($data, $addBOM);
     }
 
     /**
diff --git a/app/Locale/bg_BG/translations.php b/app/Locale/bg_BG/translations.php
index 57d2b1ab9987373c6237c80e876d4287caaf0ffc..52ba53610aecb83e98d4dd5dccc66e5d2f693da2 100755
--- a/app/Locale/bg_BG/translations.php
+++ b/app/Locale/bg_BG/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/bs_BA/translations.php b/app/Locale/bs_BA/translations.php
index 732211990f85321db26cc9047776fbb93d4a8b75..192cb089daf10ea886d269f7222eaf88cfe8fdf6 100644
--- a/app/Locale/bs_BA/translations.php
+++ b/app/Locale/bs_BA/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/ca_ES/translations.php b/app/Locale/ca_ES/translations.php
index dc6458fe1ffe03b34f5dc0bfffe23b6d023529a8..a237d861a5e9f4d83cf775722d6289e590a82f32 100644
--- a/app/Locale/ca_ES/translations.php
+++ b/app/Locale/ca_ES/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/cs_CZ/translations.php b/app/Locale/cs_CZ/translations.php
index 95295a839f0e50df7b80e9ce25788642216d0c11..63d44f88c5f2a35be447fa049c5607de9fe74d67 100644
--- a/app/Locale/cs_CZ/translations.php
+++ b/app/Locale/cs_CZ/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/da_DK/translations.php b/app/Locale/da_DK/translations.php
index bedc52d18268dfd77b19479fcaccd52e93d1c7f9..7d55a622257b6d8080033f924c4f18fd5a4ed1e6 100644
--- a/app/Locale/da_DK/translations.php
+++ b/app/Locale/da_DK/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/de_DE/translations.php b/app/Locale/de_DE/translations.php
index d8d327bac0fe0264ca83cd11bdfd9621393d226c..6fb4c5555192e213dfde3eb6d9919286c3564470 100644
--- a/app/Locale/de_DE/translations.php
+++ b/app/Locale/de_DE/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/de_DE_du/translations.php b/app/Locale/de_DE_du/translations.php
index ab119009b759dad6aa5744e30775191c176eeddd..19763da591697d29f7ae161b13612dfd42c703a7 100644
--- a/app/Locale/de_DE_du/translations.php
+++ b/app/Locale/de_DE_du/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/el_GR/translations.php b/app/Locale/el_GR/translations.php
index 01c68736d0583180f399e9560eb4e7cace2cba94..b1513c0fef30eec0d6e5469336962c29ffe09dda 100644
--- a/app/Locale/el_GR/translations.php
+++ b/app/Locale/el_GR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/es_ES/translations.php b/app/Locale/es_ES/translations.php
index 3991a6642660575813cccbfacc54fd36f96a4f56..5c8c8d32ea7ea320df321ab16918b9ed2c5d6263 100644
--- a/app/Locale/es_ES/translations.php
+++ b/app/Locale/es_ES/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/es_VE/translations.php b/app/Locale/es_VE/translations.php
index 19f530ac721d38c549488035594e042f9c6df9db..ad1ff4c7a6a3592b925c30aadec8a7f692387cd0 100644
--- a/app/Locale/es_VE/translations.php
+++ b/app/Locale/es_VE/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/fa_IR/translations.php b/app/Locale/fa_IR/translations.php
index b98a05874f1714c7068abbb928a2240e87db2c8d..84e0b64a3ccfb232dd33d6d411aa2896a4ad59c8 100644
--- a/app/Locale/fa_IR/translations.php
+++ b/app/Locale/fa_IR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/fi_FI/translations.php b/app/Locale/fi_FI/translations.php
index bdb0899fe5c40d3df900c2a94343a860ca2e344a..f7d5ae70b89f949114b3bf4553b239d90495b91e 100644
--- a/app/Locale/fi_FI/translations.php
+++ b/app/Locale/fi_FI/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/fr_FR/translations.php b/app/Locale/fr_FR/translations.php
index 94be4500061ad887a5cca981830f790f55535551..01d9c7650db950b0d225db3089bb55b0593a2ca7 100644
--- a/app/Locale/fr_FR/translations.php
+++ b/app/Locale/fr_FR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     'Invalid Mail transport' => 'Transport de courrier invalide',
     'Color invalid' => 'Couleur invalide',
     'This value must be greater or equal to %d' => 'Cette valeur doit être supérieure ou égale à %d',
+    'Add a BOM at the beginning of the file (required for Microsoft Excel)' => 'Ajouter un BOM au début du fichier (requis pour Microsoft Excel)',
 );
diff --git a/app/Locale/hr_HR/translations.php b/app/Locale/hr_HR/translations.php
index 05cf24a7429500d139d864f9ed635179794506ee..d2f3c1d55c24943b03805bb3baf76a2fa127b780 100644
--- a/app/Locale/hr_HR/translations.php
+++ b/app/Locale/hr_HR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/hu_HU/translations.php b/app/Locale/hu_HU/translations.php
index f043646bfc8e2a2e5797463cae9b70696afb058c..c6155f8d5e1bec387f5c8eaa6c579a842a95107d 100644
--- a/app/Locale/hu_HU/translations.php
+++ b/app/Locale/hu_HU/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/id_ID/translations.php b/app/Locale/id_ID/translations.php
index 79d2f815d46de1c59b6d2bfef8b23cf1ac8a1936..97cef2d5bc973c4f90aee17d8cb8f95e90ceb251 100644
--- a/app/Locale/id_ID/translations.php
+++ b/app/Locale/id_ID/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/it_IT/translations.php b/app/Locale/it_IT/translations.php
index 2895b56a064c722da72fda1934f754f018aac123..0182c833f0c8dc129d1835ede86629c9592cc589 100644
--- a/app/Locale/it_IT/translations.php
+++ b/app/Locale/it_IT/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/ja_JP/translations.php b/app/Locale/ja_JP/translations.php
index 1f6fe52598e42b90d3d8668b5a8e9a9563225569..74db1e50d9fc6292792fd7881af5b74cb6928898 100644
--- a/app/Locale/ja_JP/translations.php
+++ b/app/Locale/ja_JP/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/ko_KR/translations.php b/app/Locale/ko_KR/translations.php
index 9c855d3ca0271bbc3fae54ab4db336ddba7b31da..98220a040c863b0e0d3639c0af1f9421db16f0e6 100644
--- a/app/Locale/ko_KR/translations.php
+++ b/app/Locale/ko_KR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/mk_MK/translations.php b/app/Locale/mk_MK/translations.php
index 54bfce427ff6c9a3e6035b9df3fc0115771fb205..456eaac6d3340c8ccd3bb29825e0cb428b1d0e0f 100644
--- a/app/Locale/mk_MK/translations.php
+++ b/app/Locale/mk_MK/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/my_MY/translations.php b/app/Locale/my_MY/translations.php
index 4c6c40c4343899bed12543c7af9db267b5e36b0b..da25544854f3c344cfe4bd4f2ef5004ee5ca68c1 100644
--- a/app/Locale/my_MY/translations.php
+++ b/app/Locale/my_MY/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/nb_NO/translations.php b/app/Locale/nb_NO/translations.php
index bf4f69a296bc50fd5da6f7196aef455447dbc6e4..803d060371ab4ed5d6c0068fcd1409199eb2b546 100644
--- a/app/Locale/nb_NO/translations.php
+++ b/app/Locale/nb_NO/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/nl_NL/translations.php b/app/Locale/nl_NL/translations.php
index 1b8339bec6221d4ce672b2669c0ee82887dfc9b2..a1ef7cbed222daaa87643a7e05e0cf28f5479de4 100644
--- a/app/Locale/nl_NL/translations.php
+++ b/app/Locale/nl_NL/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/pl_PL/translations.php b/app/Locale/pl_PL/translations.php
index e6da67d8d6de564b00652e3d474236fa9820b6ae..857dee7ba5fc23ba3f1c386f52612a3751527522 100644
--- a/app/Locale/pl_PL/translations.php
+++ b/app/Locale/pl_PL/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/pt_BR/translations.php b/app/Locale/pt_BR/translations.php
index e76ff50a6e9467d5fbefb113966f2f5debc9540e..53a72f213f0c7a8fe5f87a88ef05ec91481d8906 100644
--- a/app/Locale/pt_BR/translations.php
+++ b/app/Locale/pt_BR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/pt_PT/translations.php b/app/Locale/pt_PT/translations.php
index a2a618dc9950bb2c8cc13a944a2310c97e7006b2..11f6f06ad3e0427eeea621a27d34ecb3eb714cb1 100644
--- a/app/Locale/pt_PT/translations.php
+++ b/app/Locale/pt_PT/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/ro_RO/translations.php b/app/Locale/ro_RO/translations.php
index b3d285688e6ab2ecd6432421763f5702a0581a70..4fed36dec24180efd78e3c145c244c8e6138190f 100644
--- a/app/Locale/ro_RO/translations.php
+++ b/app/Locale/ro_RO/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/ru_RU/translations.php b/app/Locale/ru_RU/translations.php
index 513db75e546dffb9aca08d43c635f0f68ab097f5..6fb385ec81f68de4410c8a0f00f6f771fe011ce3 100644
--- a/app/Locale/ru_RU/translations.php
+++ b/app/Locale/ru_RU/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/sk_SK/translations.php b/app/Locale/sk_SK/translations.php
index b712df29b4552f968d3f06c6c9c2aa10fd3e0e94..63b262e61f3b844e346c2aa812419e20bd0bf3d3 100644
--- a/app/Locale/sk_SK/translations.php
+++ b/app/Locale/sk_SK/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/sr_Latn_RS/translations.php b/app/Locale/sr_Latn_RS/translations.php
index b86837b3215e062fc9ff60f3a3d684e48474a6ae..a9b9e154143d762d33968f1c4e721dda611e7d0b 100644
--- a/app/Locale/sr_Latn_RS/translations.php
+++ b/app/Locale/sr_Latn_RS/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/sv_SE/translations.php b/app/Locale/sv_SE/translations.php
index 31e95d5cf8c623c79dbf747fd38bfa714ade3e7b..616292206a2c67a1ebb8f39bafc83683b58d491c 100644
--- a/app/Locale/sv_SE/translations.php
+++ b/app/Locale/sv_SE/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/th_TH/translations.php b/app/Locale/th_TH/translations.php
index 5b867bc4c0b4e89dd014f970dff8a3853f4e1c41..5692938cac73d3c648fcd3e4331f04a189f856d8 100644
--- a/app/Locale/th_TH/translations.php
+++ b/app/Locale/th_TH/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/tr_TR/translations.php b/app/Locale/tr_TR/translations.php
index 0cc2c19bc901e525d80ad7bb5b1237343c070a7d..6b27f8c2c54675fc1df90f6873e6e662107204d3 100644
--- a/app/Locale/tr_TR/translations.php
+++ b/app/Locale/tr_TR/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/uk_UA/translations.php b/app/Locale/uk_UA/translations.php
index d280a42777fd398c2a552e2e673bd31140addfc3..64c85f759d4e01701b58910eb8c0986c81fad773 100644
--- a/app/Locale/uk_UA/translations.php
+++ b/app/Locale/uk_UA/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/vi_VN/translations.php b/app/Locale/vi_VN/translations.php
index 87d621c78ac81445569b9414c50c511a860da46a..d8cab548a46b73177c2600f8f64cb96df264ab6f 100644
--- a/app/Locale/vi_VN/translations.php
+++ b/app/Locale/vi_VN/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/zh_CN/translations.php b/app/Locale/zh_CN/translations.php
index 1cfe1bb4c121856601c1690e3bc4317b8839ae48..332657981010af65bc74cec22b27f3c4c6508034 100644
--- a/app/Locale/zh_CN/translations.php
+++ b/app/Locale/zh_CN/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Locale/zh_TW/translations.php b/app/Locale/zh_TW/translations.php
index 8175791131ab7d221da63821a8db3040d58cd786..75ebfd5f1285820f886f566c0922c93be9b340a9 100644
--- a/app/Locale/zh_TW/translations.php
+++ b/app/Locale/zh_TW/translations.php
@@ -1462,4 +1462,5 @@ return array(
     // 'Invalid Mail transport' => '',
     // 'Color invalid' => '',
     // 'This value must be greater or equal to %d' => '',
+    // 'Add a BOM at the beginning of the file (required for Microsoft Excel)' => '',
 );
diff --git a/app/Template/export/subtasks.php b/app/Template/export/subtasks.php
index 0e47772bf3227914356e19b0fff756505608f2e3..ea80af2e301573124916500eab7371ceef553c6c 100644
--- a/app/Template/export/subtasks.php
+++ b/app/Template/export/subtasks.php
@@ -7,6 +7,7 @@
     <?= $this->form->hidden('project_id', $values) ?>
     <?= $this->form->date(t('Start date'), 'from', $values) ?>
     <?= $this->form->date(t('End date'), 'to', $values) ?>
+    <?= $this->form->checkbox('bom', t('Add a BOM at the beginning of the file (required for Microsoft Excel)'), 1, isset($values['bom']) && $values['bom'] == 1) ?>
 
     <div class="form-actions">
         <button type="submit" class="btn btn-blue js-form-export"><?= t('Export') ?></button>
diff --git a/app/Template/export/summary.php b/app/Template/export/summary.php
index 7dc7482fb06dfec4c5bf58f2181b99040e3090b6..7273100eca83b342d0f775f5711e454ee516e6a9 100644
--- a/app/Template/export/summary.php
+++ b/app/Template/export/summary.php
@@ -7,6 +7,7 @@
     <?= $this->form->hidden('project_id', $values) ?>
     <?= $this->form->date(t('Start date'), 'from', $values) ?>
     <?= $this->form->date(t('End date'), 'to', $values) ?>
+    <?= $this->form->checkbox('bom', t('Add a BOM at the beginning of the file (required for Microsoft Excel)'), 1, isset($values['bom']) && $values['bom'] == 1) ?>
 
     <div class="form-actions">
         <button type="submit" class="btn btn-blue js-form-export"><?= t('Export') ?></button>
diff --git a/app/Template/export/tasks.php b/app/Template/export/tasks.php
index 232ff8ebc12dd020764f37b59f879930b0a89efc..36926e2fb34165776412d1c4a60833473b6cecb1 100644
--- a/app/Template/export/tasks.php
+++ b/app/Template/export/tasks.php
@@ -7,6 +7,7 @@
     <?= $this->form->hidden('project_id', $values) ?>
     <?= $this->form->date(t('Start date'), 'from', $values) ?>
     <?= $this->form->date(t('End date'), 'to', $values) ?>
+    <?= $this->form->checkbox('bom', t('Add a BOM at the beginning of the file (required for Microsoft Excel)'), 1, isset($values['bom']) && $values['bom'] == 1) ?>
 
     <div class="form-actions">
         <button type="submit" class="btn btn-blue js-form-export"><?= t('Export') ?></button>
diff --git a/app/Template/export/transitions.php b/app/Template/export/transitions.php
index 4f3749b8c8c05dadc1cbf75ca2fa1e9e38de9791..a21f8e31bdaacc34c5e9076fa28cb43b5dfe5bf6 100644
--- a/app/Template/export/transitions.php
+++ b/app/Template/export/transitions.php
@@ -7,6 +7,7 @@
     <?= $this->form->hidden('project_id', $values) ?>
     <?= $this->form->date(t('Start date'), 'from', $values) ?>
     <?= $this->form->date(t('End date'), 'to', $values) ?>
+    <?= $this->form->checkbox('bom', t('Add a BOM at the beginning of the file (required for Microsoft Excel)'), 1, isset($values['bom']) && $values['bom'] == 1) ?>
 
     <div class="form-actions">
         <button type="submit" class="btn btn-blue js-form-export"><?= t('Export') ?></button>