Spread - ファイル操作
Excelファイルの取込、出力を行いたい
Biz/Browser DTでは、Excelのワークブックのデータを保持するExcelDocumentクラスが
新しく追加されました。
Excelファイルの取込はloadメソッド、出力はsaveメソッドを利用します。
loadメソッドで取込可能なファイルはExcel2007形式となっており、Excel97-2003形式は
取り込めません。
ExcelファイルのワークシートはgetSheetメソッドを利用して取得します。
getSheetメソッドの引数には、ワークシート名またはシート番号のいずれかを指定します。
サンプルコードでは、ダイアログ画面からExcelファイルを取り込む方法、Excelファイルを
出力する方法、 その他にSpreadにドラッグ&ドロップでExcelファイルを取り込む方法を
実装しています。
ドラッグ&ドロップの実装は、SpreadのDroppedイベントを利用します。
1.ダイアログ画面からExcelファイルを取り込む、Excelファイルを出力する
Form form1 { x = 0; y = 0; width = 689; height = 600; Spread spread1 { x = 40; y = 72; width = 560; height = 488; } Button button1 { x = 39; y = 15; width = 248; height = 40; title = "Excelファイル取込"; function onTouch(e) { var excelDoc = new ExcelDocument; var fs = new FileSystem; /* ダイアログ画面を表示 (任意のExcelファイルを選択してください) */ var f = fs.openDialog("Open Excel file", "*.xlsx", "xlsx", ""); /* ExcelDocumentにExcelファイル取込 */ excelDoc.load(f); /* ExcelSheetをSpreadにロード */ ^.spread1 << excelDoc.getSheet(0); } } Button button2 { x = 347; y = 15; width = 248; height = 40; title = "Excelファイル出力"; function onTouch(e) { var excelDoc = new ExcelDocument; var fs = new FileSystem; /* ダイアログ画面を表示 */ var f = fs.saveDialog("Save Excel file", "*.xlsx", "xlsx", ""); /* ExcelDocumentにSpreadのデータをロード */ excelDoc.getSheet(0) << ^.spread1; /* ExcelDocumentをExcelファイルに出力 */ excelDoc.save(f); } } }
2.Excelファイルをドラッグ&ドロップで取り込む
Form sample2 { x = 0; y = 0; width = 800; height = 593; Spread spread1 { x = 40; y = 72; width = 712; height = 488; acceptDrop = DROP_FILE; Function OnDropped(e) { var excel = new ExcelDocument; /* ファイルが正常に開かれているか判定 */ if (e.data.isValid) { /* Excelファイルをダウンロード (任意のExcelファイルをドラッグ&ドロップしてください) */ excel.get("file:" + e.data.PathName); /* ExcelSheetをSpreadに取り込む */ spread1 << excel.getSheet(0); } } } }
Biz-Collections Bizの宝箱 トップへ
Biz/Browser DT・Biz/Designer DT TIPS集 トップへ