- - PR -
VB.netを利用したXlsファイルからCsvへの変換について。
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-12-16 23:06
こちらの掲示板を利用するのは初めてです。よろしくお願いします。
質問の内容はキャプションのとおりです。 フォーム上にXlsファイルを放り込んで、フルパスとワークブックのシート数を取得し、 シート数分、workSheet(i)を、SaveAs([フルパス], [フォーマット])で書き出す、 という事を行なおうとしています。 最初はこちらの、 http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/vb_t16.htm でやってみたのですが、なにぶんセル数が10万件を越えるので時間が懸かってしまいます。 現在はここらへんの、 http://www.visualbasicforum.com/t120457.html を参考にやっています。 現在困っているのは、saveAs([フルパス])で、xlsファイルを出力はできるのですが、 saveAs([フルパス], [フォーマット])でやるとエラーが出さずに停止してしまう事です。 フォーマットの指定方法さえわかれば万事解決なのですが……よろしくお願いします。 | ||||
|
投稿日時: 2004-12-17 08:11
おはようございます。
やりたい事が今ひとつ見えてきません。 >質問の内容はキャプションのとおりです。 なんですか? あと、開発環境を書いて下さい。Winアプリなのか、Webアプリなのか。 | ||||
|
投稿日時: 2004-12-17 10:57
セルを一個ずつ読むと遅いです。 まとめて二次元配列で受けるとはやくなります。 http://support.microsoft.com/default.aspx?scid=kb;ja;JP414107 あるいは、ADO.NETを使うと手もあります。 http://support.microsoft.com/default.aspx?scid=kb;ja;311731 | ||||
|
投稿日時: 2004-12-17 12:38
>とっとさん
フォーム上にXlsファイルを入れると、同フォルダ上にシート毎に分かれたCsvファイルが 出てくるWinアプリを作ろうとしています。ユーザはあまりPCに縁の無い人です。 workbook.worksheet(i).saveas([パス名], [フォーマット])で、フォーマットを指定して 保存できるはずなんですが、フォーマットの指定が違うようでうまく動作しないのです。 フォーマットはoptionalなので、無しで保存すると問題なくXls形式で保存されます。 >todoさん 既出の問題だったんですね・・・・・・検索不足でした。お恥ずかしい限りです。。。 さっそくこれを利用して作ってみようと思います。 | ||||
|
投稿日時: 2004-12-17 16:37
CSV 形式で保存する(ファイル-形式を指定して保存)ときって、情報が失われるからなんやかやのダイアログが出ますよね。それでうまくいかないんじゃないかという気がするのですが。
であれば、事前に Application.DisplayAlerts = false しておけばいいのかもしれません。 | ||||
|
投稿日時: 2004-12-20 22:35
みなさまうまくいきました! 二次元配列で読み込むと面白いくらいに早いんですねえ。
やはり探し方が下手なのか……以降、よりいっそうの精進をします。。 >にしざきさん それでも上手く行かなかったのです。無念…… とにもかくにも上手く行ったので良かったです。ありがとうございました。 |
1