No.3ベストアンサー
- 回答日時:
No.1さんが示してくれた参考ページの「■複数のファイルを選択可能にする」を見ればやりかたは分かるかと思います。
Sub putCsv()
Dim csvFile As Variant
Dim fIdx As Integer
Dim dCell As String
csvFile = Application.GetOpenFilename(FileFilter:="CSVファイル,*.csv", MultiSelect:=True)
If Range("A65536").End(xlUp).Row = 1 Then
dCell = "A1"
Else
dCell = "A" & CStr(Range("A65536").End(xlUp).Row + 1)
End If
For fIdx = 1 To UBound(csvFile)
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & csvFile(fIdx), Destination:=Range(dCell))
.TextFileCommaDelimiter = True
.Refresh BackgroundQuery:=False
End With
dCell = "A" & CStr(Range("A65536").End(xlUp).Row + 1)
Next
End Sub
これで、ほぼ完成形かと思いますが、いかがでしょう。
No.2
- 回答日時:
> ダイアログボックスで複数のCSVファイルを選択して、
の部分についてはNo1.さんのご回答がありますので、
> 1つのシートに上から順番につめて取り込みが出来るマクロは作れるでしょうか?
の部分の回答例を作ってみました。
Sub getCsv()
Dim csvFile(2)
Dim fIdx As Integer
Dim dCell As String
csvFile(0) = "c:\a.csv"
csvFile(1) = "c:\b.csv"
csvFile(2) = "c:\c.csv"
dCell = "A1"
For fIdx = 0 To 2
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & csvFile(fIdx), Destination:=Range(dCell))
.TextFileCommaDelimiter = True
.Refresh BackgroundQuery:=False
End With
dCell = "A" & CStr(Range("A65536").End(xlUp).Row + 1)
Next
End Sub
ご参考になれば。
No.1
- 回答日時:
もちろん可能です。
やり方は色々ありますが、多分「GetOpenFilename」が一番ご希望のものに近いんじゃないかと。
http://www.officetanaka.net/excel/vba/file/file0 …
あとは複数回分取り込み処理をループするだけになります。が質問内容からして、その取り込み処理の部分を一番聞きたいのでしょうかね??
お礼が遅くなってすいません。回答ありがとうございます。
それで、popesyuさんの文の最後の
>取り込み処理の部分
そのもののマクロがわかりません。
それと、
>複数回分取り込み処理をループするだけになります。
というのはダイアログボックスでCSVファイルを複数個選択して、1度に上から詰めて出力されるのか、1個ずつダイアログボックスから出力して、回数分ダイアログボックスを開くことになるんでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- Visual Basic(VBA) VBAマクロ 決まっていない行を選択して別シートへ貼付け 4 2023/02/16 16:08
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- Visual Basic(VBA) VBAで特定の場所にあるCSVファイル(複数)から特定場所を抜き出してExcelに転記したいです。 11 2023/05/23 16:29
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルの指数を無効にしたい
-
エクセルファイルの特定セルに...
-
複数のcsvファイルを1つのEXCEL...
-
【エクセル VBA】CSVファイルの...
-
VBAで一定期間の名簿を検索、抽...
-
【マクロ】その時、その時で変...
-
フォルダ内の全ブックのシート...
-
VBAに詳しい方教えてください。
-
【ExcelVBA】クエリの更新とピ...
-
「開いているすべてのブック」...
-
エクセルファイルを自身のファ...
-
エクセルのマクロについて教え...
-
Powerpointでランダムな数字の...
-
cellsで特定の離れた範囲を選択...
-
AccessからExcelマ...
-
マクロの有効化するダイヤログ...
-
ExcelVBAで今開いているユーザ...
-
エクセルでツールバーに「縮小...
-
Excelファイルがxslからxslmに??
-
Pictures.Insertメソッド⇒Shape...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの指数を無効にしたい
-
複数のCSVファイルを横に並べて...
-
excelインポート時の「実行時エ...
-
「ほかのアプリケーションを無...
-
大量のCSVデータを1つのエ...
-
VBAでCSVの1行目だけを書き換え...
-
CSVファイルの結合(重複データ...
-
複数のcsvファイルを1つのEXCEL...
-
二つのCSVファイルを照らし合わ...
-
datファイル→csvファイル→datフ...
-
EXCELにcsv形式の外部データを...
-
VBAでユーザーフォーム上に参照...
-
【VBA初心者】同じフォルダ内の...
-
【エクセル VBA】CSVファイルの...
-
EXCELLの動きが遅い
-
複数個のascファイルを1つ...
-
複数の同じ様式のエクセルデー...
-
Excel VBAを使った複数のCSVフ...
-
破損したExcelファイルの内容を...
-
Accessにエクセルからデータを...
おすすめ情報