Excel出力時にGeneralFormatterで指定した書式が適用されない
対象製品
SpreadJS(Ver.10.x.x -)
状況
修正済み
詳細
セルに書式を設定する際にGeneralFormatterを使用した場合、そのシートをExcelにエクスポートすると書式が適用されません。
var f = new GC.Spread.Formatter.GeneralFormatter("[<43586]ge/M/d;[>43830]ge/M/d;g¥"1¥"/M/d");
sheet.getCell(0, 0).formatter(f);
sheet.getCell(0, 0).value(new Date(2019,04,01));
上記のサンプルコードでは、シード上では "R1/5/1" と表示されますが、Excelに出力した際には "43586" と表示され書式が正しく適用されません。
var f = new GC.Spread.Formatter.GeneralFormatter("[<43586]ge/M/d;[>43830]ge/M/d;g¥"1¥"/M/d");
sheet.getCell(0, 0).formatter(f);
sheet.getCell(0, 0).value(new Date(2019,04,01));
上記のサンプルコードでは、シード上では "R1/5/1" と表示されますが、Excelに出力した際には "43586" と表示され書式が正しく適用されません。
回避方法
SpreadJS (Ver.13.0.4)で修正済み
Ver.13.0.4より前のバージョンでは次の方法で回避可能です。
以下のようにセルにformatterを使用することで回避が可能です。
sheet.getCell(0, 0).formatter("[<43586]ge/M/d;[>43830]ge/M/d;g¥"1¥"/M/d");
sheet.getCell(0, 0).value(new Date(2019,04,01));
Ver.13.0.4より前のバージョンでは次の方法で回避可能です。
以下のようにセルにformatterを使用することで回避が可能です。
sheet.getCell(0, 0).formatter("[<43586]ge/M/d;[>43830]ge/M/d;g¥"1¥"/M/d");
sheet.getCell(0, 0).value(new Date(2019,04,01));