[{"id":"924e5c0c-0717-4fae-9bbc-0b496941985e","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"22646924-f1ae-4a94-ac8e-e3e8ea2931f2","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"827318c4-10fd-462b-aa96-fab2cff174a9","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"8f626f70-8570-4934-a0e5-fc0ca6584738","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"1029bbcc-399c-42e6-b412-a0437395d2d5","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7e6097ce-e53b-416c-89c8-a3708db50528","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"3d1b1e48-357c-4999-985c-d9422356690a","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"e6cb5248-c20b-4d3e-adaf-b5c547e29548","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"58695f0f-7cb8-4bad-b617-dda90b01f606","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"081f453a-0e9a-4f06-a70b-18085a1f0d81","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"2c1d8bf8-2b69-4b16-bac9-9c46901abb6a","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"a042f416-d318-415c-b294-ed88a5010572","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7a454c88-860a-4e28-b52c-b18bae07dfe8","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"63b1ec03-c852-40ec-860e-f025c5791091","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"6b7d135b-71b4-4af7-828c-b28bf70b8ec7","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"5937193e-fd56-4296-8e32-ba41dba8e564","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"8ed468db-93ce-4cb3-8e2b-3249d9d464a7","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"4169f34f-3e9b-45c1-91bf-41c02c3ad5a4","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"411aa66d-8df8-4466-896a-d8de68cf7066","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7fc8dcfc-27ff-4496-96c2-d92dfe1fb4b2","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"02afd225-87f7-4f6d-8be1-0a303c8beade","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"8040235f-6c53-447e-a7f0-4fe5911e066b","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"0610b0d6-03c7-461b-9dd4-f8d1b1787e7c","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"7919ac2f-121b-447c-82ed-15d13b45df0b","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"1d01b943-eac8-480b-8d85-19bd093c8b3d","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"1f4d1309-e22c-413f-848d-2c0ca8450b0e","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"66d78fb1-e833-4bbf-ac7c-6bdfce9a80b0","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"ed5ad6f1-f5a2-47b8-a915-b185e8471ca3","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"6e9decb7-47f3-4871-81b9-65504bc293f1","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"836dcc3b-2afe-4351-bf9f-bd9e2b0c8510","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"80633614-e86b-4b0b-9129-9f7acab69f6d","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"1aaae15a-3496-43eb-a681-b077034832e4","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"70ce0595-eb94-4eb3-84f6-3a89ab8a4409","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"f3e379ff-ca52-44d8-a15e-966f89904220","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"c1228456-1b5c-429d-b231-25c10a2b41cc","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"58e7444a-12e4-4161-81db-0bb54d09eca9","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"f70c6c85-addd-43e7-8e2b-69dfe4a0a2fd","tags":[{"product":null,"links":null,"id":"6c1a6899-1b88-404c-9a73-4a0c6c9090a3","name":"New","color":"Red","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]},{"id":"de70365b-d7c6-4355-a59b-3e77a6a374ae","tags":[{"product":null,"links":null,"id":"2f522515-8c88-4017-855d-905bc4b0ea3c","name":"Upd","color":"Blue","productId":"66a69675-7df9-45b2-867a-4ab2613535fa"}]}]
SpreadJS は、次の方法を使用して Excel ファイルへのインポートとエクスポートをサポートします。
クライアント側で Excel のインポートとエクスポート
SJS ファイル形式で Excel のインポートとエクスポート
暗号化された Excel ファイルのインポートとエクスポート
クライアント側でインポートおよびエクスポートメソッドを使用すると、Excelファイル(.xlsx)をJSONにインポートしたり、JSONオブジェクトをExcelにエクスポートしたりできます。
type=warning
saveメソッドで生成したExcel形式ファイルの状態は、ダウンロードによって読み取り専用となります。これはインターネットを経由してダウンロードされるファイルに対してウェブブラウザがZone.Identifier情報を自動的に付与した影響です。Microsoft ExcelはZone.Identifier情報を検知し、Excel形式ファイルの初回オープン時に警告メッセージを表示します。また、エクセルファイルをインポートおよびエクスポートするには、gc.spread.excelio.xx.x.x.min.jsを参照する必要があります。
Excelファイルをローカルにダウンロードすることも、返されたExcelファイル(BLOB型)を取得し、サーバーに送信することもできます。
次のサンプルコードは、Excelファイルを開き、保存します。コードの最初の部分は、クライアント側のインポートおよびエクスポートの依存関係のファイルを示します。
<!DOCTYPE html>
<html lang="en">
<head>
<title>SpreadJS Client Side ExcelIO</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/FileSaver.js/2023-11-29/FileSaver.min.js"></script>
<link href="./css/gc.spread.sheets.excel2013white.x.x.x.css" rel="stylesheet"/>
<script src="./scripts/gc.spread.sheets.all.x.x.x.min.js" type="application/javascript"></script>
<!--For client-side excel i/o-->
<script src="./scripts/interop/gc.spread.excelio.x.x.x.min.js"></script>
</head>
<body>
<div>
<input type="file" name="files[]" id="fileDemo" accept=".xlsx"/>
<input type="button" id="loadExcel" value="Import" onclick="ImportFile()"/>
<input type="button" class="btn btn-default" id="saveExcel" value="Export" onclick="ExportFile()"/>
<input type="text" id="exportFileName" placeholder="Export file name" class="form-control" value="export.xlsx"/>
<div id="ss" style="width:100%; height:500px"></div>
</div>
</div>
</body>
<script>
var workbook, excelIO;
window.onload = function () {
workbook = new GC.Spread.Sheets.Workbook(document.getElementById("ss"));
excelIO = new GC.Spread.Excel.IO();
}
function ImportFile() {
var excelFile = document.getElementById("fileDemo").files[0];
excelIO.open(excelFile, function (json) {
var workbookObj = json;
workbook.fromJSON(workbookObj);
}, function (e) {
console.log(e);
});
}
function ExportFile() {
var fileName = document.getElementById("exportFileName").value;
if (fileName.substr(-5, 5) !== '.xlsx') {
fileName += '.xlsx';
}
var json = JSON.stringify(workbook.toJSON());
excelIO.save(json, function (blob) {
saveAs(blob, fileName);
}, function (e) {
console.log(e);
});
}
</script>
</html>
Excelファイル(.xlsx)を.SJS形式(SpreadJSファイルタイプ)にインポートし、openまたはsaveメソッドを使用して.SJSファイルをExcelファイルにエクスポートすることができます。膨大なExcelファイルをインポートする場合、.SJS形式を利用することで、読み込み時間とメモリ使用量を大幅に改善できます。また、再保存時にファイルサイズを大幅に削減できます。
このサンプルコードは、open メソッドと save メソッドを使用して Excel ファイルを開いて保存する方法を示します。
// SJS ファイルをスプレッドに開きます。
function OpenFile()
{
var excelFile = document.getElementById("fileDemo").files[0];
spread.open(excelFile, () => {
}, function (e) {
console.log(e);
});
}
// スプレッドをxlsxファイルにエクスポートします。
function SaveFile()
{
var fileName = document.getElementById("exportFileName").value;
if (fileName.substr(-5, 5) !== '.xlsx')
{ fileName += '.xlsx'; }
spread.save(sjs, function (blob) {
saveAs(blob, fileName);
}, function (e) {
console.log(e);
});
}
次の表は、Excelファイルにインポートまたはエクスポートできる機能を示します。
機能 | 説明 | インポート(excelをjsonに) | エクスポート (jsonをexcelに) |
---|---|---|---|
ワークブック(spread) | tabstrip: tabStripVisible, startSheetIndex, tabStripRatio, tabColor | √ | √ |
スクロールバー: showHorizontalScrollbar, showVerticalScrollbar | √ | √ | |
シート: シートの名前、シートの表示/非表示設定 | √ | √ | |
参考スタイル:R1C1またはA1 | √ | √ | |
カスタム名 | √ | √ | |
共有の文字列 | データシートに使用された文字列(共通の文字列、空白文字列) | √ | √ |
テーマ | カラースキーム | √ | √ |
フォントスキーム( Spread.Sheetsには詳細なフォントがありません) | √ | √ | |
フォーマットスキーム(Spread.Sheetsにはフォーマットスキームがありません) | X | √ | |
スタイル | cellStyles:Spread.Sheetsがサポートされているすべてのスタイル | √ | √ |
さまざまな形式(テーブルに使用される形式、条件付き形式またはフィルタ) | √ | √ | |
tableStyles | √ | √ | |
ワークシート | rowRangeGroup、colRangeGroup | √ | √ |
rowCount と columnCount | √ | √ | |
グリッドライン表示/非表示設定、グリッドラインの色 | √ | √ | |
列ヘッダ/行ヘッダの表示/非表示設定 | √ | √ | |
ズーム | √ | √ | |
選択 | √ | √ | |
activeRow、 activeColumn | √ | √ | |
行・列の固定 (frozenRowCount, frozenColumnCount) | √ | √ | |
デフォルトのrowHeightまたはcolumnWidth | √ | √ | |
columnInfo:列の幅、表示/非表示、スタイル設定 | √ | √ | |
セル結合 | √ | √ | |
シートの保護の状態 | √ | √ | |
rowInfo: 行の高さ、表示/非表示、スタイル設定 | √ | √ | |
cellInfo:セルの値、数式、スタイル、結合設定 | √ | √ | |
カスタム名 | √ | √ | |
条件付き形式 | √ | √ | |
コメント | √ | √ | |
画像 | √ | √ | |
スライサー | √ | √ | |
スパークライン | √ | √ | |
テーブル | √ | √ | |
フィルタ | √ | √ | |
検証 | √ | √ | |
アウトライン | √ | √ | |
印刷 | √ | √ |
SpreadJSは、暗号化されたExcelファイルのインポートとエクスポートをサポートします。インポートまたはエクスポートする時に、次のモジュールを参照する必要があります。
<script src="scripts/gc.spread.sheets.io.0.0.0.min.js"></script>
暗号化されたExcel ファイルをインポートするには、import
メソッドのpassword
プロパティにパスワードを設定する必要があります。正しいパスワードが指定されている場合、ファイルは正常にインポートされます。ただし、無効または正しくないパスワードを指定すると、errorCallBack 関数がトリガーされ、エラーが返されます。ErrorCode 列挙体のメンバーを使用すると 、エラー メッセージを指定できます。
次のサンプルコードは、暗号化されたExcelファイルをインポートする方法を示します。
const userPassword = 'Asdf0123';
// パスワード付き Excel ファイルをインポートします。
const errorCallback = (e) => {
if (e.errorCode = GC.Spread.Sheets.IO.errorCode.invalidPassword) {
console.log('無効なパスワードです。');
} else if (e.errorCode = GC.Spread.Sheets.IO.errorCode.noPassword) {
console.log('パスワードを入力してください。');
}
}
spread.import(file, () => { }, errorCallback, {
fileType: GC.Spread.Sheets.FileType.excel,
password: userPassword,
})
export
メソッドのpassword
プロパティを指定することで、 Excel ファイルをエクスポートする時にパスワードを設定することは出来ます。SpreadJS では、パスワードを指定する場合に暗号化されたExcelファイルがエクスポートします。パスワードを指定しない場合、暗号化されない元のExcelファイルをエクスポートします。
次のサンプルコードは、暗号化されたExcelファイルをエクスポートする方法を示します。
const userPassword = 'ABC0123';
const fileName = 'encrypt-export.xlsx';
// パスワード付き Excel ファイルをエクスポートします。
spread.export(blob => saveAs(blob, fileName), e => console.log(e),
{fileType: GC.Spread.Sheets.FileType.excel,
password: userPassword,
}
);
SpreadJSデザイナを使用する場合もExcelファイルのインポートまたはエクスポートする時にパスワードを設定することができます。
暗号化されたファイルをインポートするには、[ファイル]をクリックして[インポート]を選択します。[インポート]メニューページで[Excelファイル]を選択してファイルインポート設定を指定し、[パスワード]フィールドにパスワードを入力して[Excelファイル]をクリックします。
暗号化されたファイルをエクスポートするには、[ファイル]をクリックして[エクスポート]を選択します。[エクスポート]メニューページで[Excelファイル]を選択してファイルのエクスポート設定を指定し、[パスワード]フィールドにパスワードを入力して[Excelファイル]をクリックします。