Skip to content

Instantly share code, notes, and snippets.

@keidrun
Created June 28, 2017 14:46
Show Gist options
  • Save keidrun/418e90a07c539cdd6d947b85dc197c84 to your computer and use it in GitHub Desktop.
Save keidrun/418e90a07c539cdd6d947b85dc197c84 to your computer and use it in GitHub Desktop.
var Excel = require('exceljs');
var fs = require('fs')
var inputFilePath = "C:/Users/user/data-pattern.xlsx";
var outputDirPath = "./output/";
var sheetName = "data-sheet";
var startY = 5;
var startX = 3;
var itemNum = 3;
var rowNum = 2;
var nameStartY = 5;
var nameStartX = 2;
var endY = startY + rowNum - 1;
var endX = startX + itemNum - 1;
var workbook = new Excel.Workbook();
workbook
.xlsx
.readFile(inputFilePath)
.then(function () {
var worksheet = workbook.getWorksheet(sheetName);
var head = ["item1", "item2", "item3"];
var fileName = ["file1", "file2"];
for (var y = startY, j = 0; y <= endY; y++, j++) {
var json = {};
for (var x = startX, i = 0; x <= endX; x++, i++) {
json[head[i]] = worksheet
.getCell(y, x)
.value;
}
var file = outputDirPath + fileName[j] + ".json";
try {
fs.writeFileSync(file, JSON.stringify(json, null, " "));
console.log("Exported \"" + file + "\".");
} catch (e) {
console.log("Failed to export \"" + file + "\".");
console.log("err =>" + e);
}
}
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment