Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11270 / 13644 ツリー ←次へ | 前へ→

【17028】csvファイル内のデータ数の取得方法? みーちゃん 04/8/19(木) 20:11 質問[未読]
【17030】Re:csvファイル内のデータ数の取得方法? ちゃっぴ 04/8/19(木) 22:35 回答[未読]
【17059】Re:csvファイル内のデータ数の取得方法? みーちゃん 04/8/20(金) 16:25 お礼[未読]

【17028】csvファイル内のデータ数の取得方法?
質問  みーちゃん  - 04/8/19(木) 20:11 -

引用なし
パスワード
   〜やりたいこと〜
csvファイルをオープンし、Line inputを使ってそれをニ次元配列の
バッファに取得しておいて、あとで取得した配列から必要なデータだけ抜き取り、
ファイルに落とす作業に使用したい。

〜問題〜
普通、二次元配列というと、aa(0to縦のMax,0to横のMax)的にサイズを指定
しなければならないと思うのですが、縦のMaxにあたるcsvファイル内のデータ数って、
excelのxlupを使わずに求めるには、どうすればよいのでしょう。
やっぱり、一旦、ファイルopenしてカウントしないと駄目ですか?
そうすると、csvファイル内のデータ数取得時とcsvファイル内のデータ取得時
合わせて2回openしないといけないようで、何だか作業が遅くなる気がするのですが・・・

【17030】Re:csvファイル内のデータ数の取得方...
回答  ちゃっぴ  - 04/8/19(木) 22:35 -

引用なし
パスワード
   ReDimにPreserveキーワードをつけてみてはいかがでしょう。
ループの中で、毎回動的配列を宣言することになりますが・・・

それがイヤなら、FileSystemObjectのTextStreamオブジェクトの
ReadAllメソッドで、一括読み込みし、Split関数をvbCrLfで
分割する方法もあるかとおもいます。

【17059】Re:csvファイル内のデータ数の取得方...
お礼  みーちゃん  - 04/8/20(金) 16:25 -

引用なし
パスワード
   ▼ちゃっぴ さん:
>ReDimにPreserveキーワードをつけてみてはいかがでしょう。
>ループの中で、毎回動的配列を宣言することになりますが・・・
>
>それがイヤなら、FileSystemObjectのTextStreamオブジェクトの
>ReadAllメソッドで、一括読み込みし、Split関数をvbCrLfで
>分割する方法もあるかとおもいます。

ちゃっぴ さん ありがとうございます。
後者の一括読み→改行で分割でいきたいとおもいます。

11270 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free