以下のエントリーではofficegenをおすすめしている。
しかしofficegenはmerged cellしたり色塗ったりすることができないっぽい。
いろいろ触った結果、exceljsがよさそう。
- 日本語出力できた
- モデル的な操作もできる
const Excel = require('exceljs')
const workbook = new Excel.Workbook()
const sheet = workbook.addWorksheet('2017')
sheet.columns = [
{ header: 'Id', key: 'id', width: 10 },
{ header: 'Name', key: 'name', width: 32 },
{ header: 'D.O.B.', key: 'DOB', width: 10 }
]
sheet.addRow({id: 1, name: '太郎', dob: new Date(1970,1,1)})
sheet.addRow({id: 2, name: '二郎', dob: new Date(1965,1,7)})
- merged cellもできる
sheet.mergeCells('A1:B5')
- 色塗ったりテキストスタイルを指定したりもできる
ということで非常に多機能だし使いやすい。