2020/8/17
JavaScript
パスワード付きのExcelファイルをJavaScriptで開く方法
JavaScriptでExcelファイルを取り扱えるライブラリは下記3つのライブラリが代表的です。
ただしパスワード付きのExcelファイルを開くにはxlsx-populateしか対応していません。
SheetJSはProfessional Editionでは対応しているそうです。
ブラウザでの使用サンプル: xlsx-populate 1.21.0
HTML
<input id="file" type="file" accept=".xlsx,.xlsm">
<input id="password" type="password">
<button id="open" onclick="clickOpen()">Open</button>
JavaScript
function clickOpen() {
let file = document.getElementById('file');
let password = document.getElementById('password');
XlsxPopulate.fromDataAsync(file.files[0], { password: password.value })
.then(function (workbook) {
let result = {};
for (let sheet of workbook.sheets()) {
if (sheet.usedRange()) {
result[sheet.name()] = sheet.usedRange().value();
}
}
console.log(result);
})
.catch(function (error) {
console.log(error);
});
}