将数据从表导出到Excel工作表时,防止列中的自动计算

时间:2018-04-28 09:49:49

标签: jquery html excel

我必须创建一个报告。我的数据库表中有一列存储了一些数学方程式(如-1-100),同时从我的报告表中将数据导出到excel表,其中包含来自数据库的数据。该列在excel表中给出的值类似于(-101)(自动计算值)。我不希望这种情况发生,我希望 Equation 导出到excel。 下面是我将表格导出到excel.i的代码,需要在excel表格中防止自动计算。请帮忙。



                var htmls = "";
                var uri = 'data:application/vnd.ms-excel;base64,';
                var template = '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>{table}</table></body></html>';
                var base64 = function (s) {
                    return window.btoa(unescape(encodeURIComponent(s)))
                };

                var format = function (s, c) {
                    return s.replace(/{(\w+)}/g, function (m, p) {
                        return c[p];
                    })
                };

               
                htmls = $('#PrintDiv').prop('outerHTML');
                var ctx = {
                    worksheet: 'Worksheet',
                    table: htmls
                }


                 var link = document.createElement("a");
                link.download = "WorkReport" + new Date().toISOString().replace(/[\-\:\.]/g, "") + ".xls";
                link.href = uri + base64(format(template, ctx));
               link.click();
&#13;
&#13;
&#13;

1 个答案:

答案 0 :(得分:0)

这听起来很明显,但你试过禁用自动计算吗?

公式&gt;计算选项&gt;手册。