ExcelへのAlaSQLエクスポートでセル形式を定義することは可能ですか?
AlaSQL を使用してグリッド データを Excel にエクスポートするシステムを維持しています。問題は、Excel データが NUMBER に変換されていないことです。DATE 値は問題ありませんが、数値型は常に [一般] として表示されます。JSで強制的に数値型に変換すると、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>
ご清聴ありがとうございました。