- ベストアンサー
EXCELのマクロで外部データの取り込み
CSVファイルを「外部データの取り込み」でシートに読み込むマクロを自動記録で作成したのですが取り込むファイル名が毎回違うのでそのマクロを使うことができません。そこでファイルリストのダイアログからパスとファイル名を指定して実行できる様にしたいのです。良い方法が有りましたらご伝授をお願いします。 ちなみにCSVファイルはネットワークドライブ上にあります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ANo.1です。 どのようなマクロの自動記録が出来ているのか不明なので憶測です。 Dim F_name As Variant F_name = Application.GetOpenFilename("CSV ファイル (*.csv),*.csv") With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & F_name, Destination:=Range("A1")) '仮に貼り付けるセルをA1としています。 .Name = Replace(Right$(F_name, Len(F_name) - InStrRev(F_name, "\")), ".csv", "") '~以下については条件が不明~
その他の回答 (1)
- n-jun
- ベストアンサー率33% (959/2873)
回答No.1
Sub test() Dim F_name As Variant F_name = Application.GetOpenFilename("CSV ファイル (*.csv),*.csv") MsgBox F_name End Sub みたいなことでしょうか?
お礼
どうもありがとうございました。 おかげさまで思い通りのマクロを作ることが出来ました。 また分からないことが有ったらご指導おねがいします。
補足
早々のご回答ありがとうございます。 正にそのとおりなのですが変数のF_nameをどの様に使って外部データの取り込みをするのかが分かりません、大変素人っぽい質問で恐縮ですがその辺ことも教えて頂けないでしょうか。