是否可以在AlaSQL导出到Excel时定义单元格格式?
我正在维护一个使用AlaSQL将网格数据导出到Excel的系统。问题是Excel数据没有转换为数字。日期值可以,但数值类型始终显示为常规。通过在JS中强制转换为Number类型,消息"Number stored as Text“将显示在xls文件中。
我认为直接使用js-xlsx解决这个问题会更容易,但它会在项目中产生很多更改,这不是一种选择。
我需要使用类似于这里所示的jsFiddle,将json选项传递给alasql函数。
下面是一段简单的代码作为示例:
<head>
<script src="http://cdn.jsdelivr.net/alasql/0.2/alasql.min.js"></script>
<script src="http://alasql.org/console/xlsx.core.min.js"></script>
</head>
<script>
function download() {
var opts = {
sheetid: 'Default',
headers: true
};
alasql.fn.to_number = function(val){
return new Number(val);
};
var query = 'SELECT to_number("1") as NumericColumn INTO XLSX("Test.xlsx", ?)';
alasql(query, [opts, function data(){}]);
};
</script>非常感谢您的关注。
发布于 2016-01-04 15:03:07
AlaSQL具有带着色功能的XLSXML()导出函数:
var data = [{city:"London",population:5000000},
{city:"Moscow",population:12000000},
{city:"Mexico",population:20000000},
{city:"New York",population:20000000},
];
var opts = {
headers:true,
column: {style:{Font:{Bold:"1"}}},
rows: {1:{style:{Font:{Color:"#FF0077"}}}},
cells: {1:{1:{
style: {Font:{Color:"#00FFFF"}}
}}}
};
alasql('SELECT * INTO XLSXML("restest280b.xls",?) FROM ?',[opts,data]);您可以在此处定义工作表中任何列、行或单元格的样式。
https://stackoverflow.com/questions/34582471
复制相似问题