- ベストアンサー
FSOでエクセルファイルを作成したい
- FSOを使用してエクセルファイルを作成したいが、作成したファイルが開けない問題が発生しています。
- 新規Excelファイルを作成するサブルーチンを使用して、FSOを介してエクセルファイルを作成した。しかし、作成したファイルを開こうとすると正しくないファイル形式または拡張子のエラーメッセージが表示される。
- FSOを使ってエクセルファイルを作成するプロセスは正常に実行されているが、作成されたファイルを開くと、正しいファイル形式または拡張子ではないというエラーメッセージが表示される。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
下記でお勉強して、テキストファイル(複数)に情報を書き込んで、フォルダ丸ごとZIP圧縮して、拡張子を.XLSXにすればエクセルで開けるかも。 http://www.ecma-international.org/publications/standards/Ecma-376.htm 真っ新のWorkbookを作成し、Sheet1のA1セルに「Hello World!」と入力して、XLSX形式で保存します。ファイル名のXLSXの後ろに.ZIPをつけて改名した後に解凍します。複数のXMLファイルが出来ますが、sharedStrings.xmlの中に、Hello World!が見つかりました。sheet1.xmlの中ではないんですね。 <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <sst xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" count="1" uniqueCount="1"><si><t>Hello World!</t><phoneticPr fontId="1"/></si></sst> Sheetが3個あるWorkbookの場合で、8個のXMLファイルを作ってやる必要がありますね。 お暇な方は年末年始休みにでもテキストファイルで作成してみてはいかがでしょうか。
その他の回答 (2)
- aozakana_dha
- ベストアンサー率45% (76/168)
それはテキストファイルを作成しているだけなので 拡張子だけ変えてもExcelのファイルにはなりません。 Scripting.FileSystemObjectでExcelワークシートのファイルを作成するのはたぶん無理です。 Excel.Applicationを使う必要があるかと思います。
お礼
ご回答ありがとうございました。
- bin-chan
- ベストアンサー率33% (1403/4213)
> 何が間違ってますか? > With myFSO.CreateTextFile("C:\" & MyFile) できあがったファイルサイズは0バイトでしょ。 拡張子は 'xlsx' ですが、テキストファイルをクリエイトしてる。 サンプルは CreateObject("Excel.Application") で検索
お礼
ご回答ありがとうございました。
お礼
ご回答ありがとうございました。