- 締切済み
VBAで複数のCSVの読み込み
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_050.html こちらのサイトの「古くからあるステートメントの方法」を参考にしてCSVファイルを選択してエクセルのシート上にCSVの情報を貼れたのですが、 例えばグローバル変数を2つ作り、別プロシージャから2つの違うCSVファイルパスをそれぞれ受け取り、↑の方法で1つのシートに2つのCSV情報を貼るにはどのようにすればよいですか? AファイルとBファイルがあったとしてシートの中身を A A A B B B のように横につなげるようにしたいです。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- mt2008
- ベストアンサー率52% (885/1701)
回答No.2
配列を増やして別なCSVのデータをそこに入れるというのも有りですが、CSVの読み込み貼り付けを2回行っては如何ですか? 1回目の貼り付けが終了した後、↓こんな感じで使用最大列数を求めておきます。 nColMax = ActiveSheet.UsedRange.Column で、2回目の貼り付け時は Range(Cells(GYO, 1), Cells(GYO, IX1)).Value = X ' 配列渡し (6) ↓ Range(Cells(GYO, 1 + nColMax), Cells(GYO, IX1 + nColMax)).Value = X ' 配列渡し (6) と、言う感じで横の方に貼り付ければ良いと思います。
- mt2008
- ベストアンサー率52% (885/1701)
回答No.1
質問では、2つのCSV内のデータをシートにならべて貼り付けたいと理解しましたが、リンク先のコードはシート上のデータをCSVに書き出すコードでした。 質問内容とリンク先が一致していません。 もしかして、1枚のシート上のデータを2つのCSVに分けて出力したいという内容でしょうか?
補足
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_030.html こちらの内容の間違いでした。 Redim Preserveで配列を増やせばいいと思うのですが、インデックスエラーが返されてしまいます。 どうすればよろしいでしょうか・・