![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
エクセルでマクロを使用して、複数のtxtファイルを取り込みたいのですが
うまくいかず困っております。
過去の質問を見ながらやりたい事に近い下記のサンプルマクロを見つけました。
サンプルマクロ--------------------------------------------------------
Sub txt取り込み()
Dim OpenFileName As Variant
OpenFileName = Application.GetOpenFilename(FileFilter:="テキスト,*.txt?", _
MultiSelect:=True)
If IsArray(OpenFileName) Then
''''
Else
MsgBox "キャンセルしました、OKを押してください"
End If
End Sub
-------------------------------------------------------------------
これだけでは、マクロ実行→ダイアログボックスでtxtFile選択。で終わってしまいます。
ここから下記の「txtFile内容説明」ご参照のうえ、以下の「手順」でtxt取込み出来る様、
ご教授いただけませんでしょうか?
「txtFile内容説明」---------------------------------------------
・ダイアログボックスで選択したいテキストファイルは最大100個です
・テキストファイルには、カンマで区切られたデータが保存されております
テキストファイル例(ファイル名は001.txtから連番で100.txt)
001.txt→"001","A001","B","C",
002.txt→"002","A002","B","C",
003.txt→"003","A003","B","C",
.
.
.
100.txt→"100","A100","B","C",
「txtFile内容説明」ココまで---------------------------------------
「手順」----------------------------------------------------------------------
(1)ダイアログボックスでテキストファイル複数選択(テキストファイル100個選択したとして)
(2)セルR3:R102(R3に001.txt R4に002.txt R5に003.txt … R102に100.txt)を読み込み
(3)それぞれのテキストファイルをカンマ区切りで、右セルに区切って取り込み
セル配置
R3 S3 T3 U3
R4 S4 T4 U4
R5 S5 T5 U5
.
.
.
R102 S102 T102 U102
上記、セル配置に取り込まれたデータ
001 A001 B C
002 A002 B C
003 A003 B C
.
.
.
100 A100 B C
と、なるようにマクロを作成することは可能でしょうか?
その場合、どのような記述になるのか教えていただければ幸いです。
「手順」ココまで-------------------------------------------------------------
予備情報
説明の為、テキストファイル内データを、"003","A003","B","C",と、4データにしておりますが、
実際は16データあり、さらに1データの文字数は10ケタあります。
実際に16データ、文字数10ケタで質問説明を書いたのですが、あまりにわかりにくくなってしまい、
4データとして、文字数も絞らせていただき、質問致しました。
申し訳ございません。
なお、100個のテキストファイルを読み込ませ、セル範囲R3:AG102にデータテーブルを作りたいと
考えております。
説明不足な点ございましたら、ご指摘いただけますでしょうか。
何卒、よろしくお願い致します。
No.1ベストアンサー
- 回答日時:
sub macro1()
dim filenames as variant
dim myfile as variant
dim buf as string
dim n
filenames = application.getopenfilename(multiselect:=true)
if not isarray(filenames) then exit sub
n = 2
for each myfile in filenames
n = n + 1
open myfile for input as #1
line input #1, buf
cells(n, "R") = buf
close #1
next
Range("R3:R102").TextToColumns _
Destination:=Range("R3"), _
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, _
Tab:=False, _
Semicolon:=False, _
Comma:=True, _
Space:=False, _
Other:=False, _
FieldInfo:=Array(Array(1, 2), Array(2, 2), Array(3, 2), Array(4, 2), _
Array(5, 2), Array(6, 2), Array(7, 2), Array(8, 2), _
Array(9, 2), Array(10, 2), Array(11, 2), Array(12, 2), _
Array(13, 2), Array(14, 2), Array(15, 2), Array(16, 2)), _
TrailingMinusNumbers:=True
end sub
ホンモノの実データの内容に応じて,チューニングが必要かもしれません。
keithin様
ご回答、ありがとうございます。
普段使用しているPC(以下 PC1)で、そのままの記述で動作致しました。
ただ環境によるのか、使用するPC(以下 PC2)によっては、
(1)マクロ実行
(2)ダイアログボックスが開く
(3)ディレクトリ変更(txtFileが保存されているネットワーク上のPC)
(4)txtFile選択し、開く
で、txtFileが取り込まれず、(エクセルも落ちるわけではなく)再度(1)からやり直すと
2回目は取り込めたりする動作が確認出来ました。
PC2は、普段そのネットワークPCにつながないので、1回目は上手く通信出来ていないだけなのかな?
と、勝手に想像しています。
(PC1は、ネットワーク上PCにアクセスする機会が多く、通信が上手く出来ている?)
愚問だとは思いますが、お気づきの点がございましたら、ご連絡頂けると幸いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/02/05 09:55
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/16 14:36
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
Microsoft familyに追加されま...
-
【関数】○年○ヶ月と表示された...
-
タブレット Canva
-
マイクロソフト 一時使用コード...
-
office2016のパソコン2台インス...
-
WEBの記事を印刷する際にA...
-
【Excel VBA】PDFを作成して,...
-
大学のレポート A4で1枚レポー...
-
VBA CSV出力について
-
パソコン買い換え Office移行 ...
-
Windows 11で、IME言語バー(IM...
-
エクセルでXLOOKUP関数...
-
Outlookを立ち上げたらGoogleロ...
-
Excelの関数(FILTER関数)につ...
-
Microsoft365の一部を解約したい
-
Microsoft 365 の一般法人向け...
-
Microsoft365で自動保存が出来...
-
Officeの字体
-
Outlookで、任意のメールアドレ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelでdatファイルを作成??
-
拡張子が.txtのファイルに将来...
-
複数のテキストファイルをexcel...
-
バッチファイルが作成できない
-
batファイル処理でのテキストフ...
-
ファイル名の特定文字だけ削除...
-
テキストファイルの文字色に色...
-
複数のファイルを同時検索し、...
-
一気にずばっと複数のメールを...
-
VBSでテキストファイルのタブ区...
-
ヘルプファイルの翻訳
-
ExcelVBA テキストファイルから...
-
windowsへscp
-
テキストファイルを開かずに中...
-
マクロでメモ帳に貼り付け
-
文字の頭文字順に自動移動
-
CDの曲名をテキストファイルで...
-
KADOKAWA電撃文庫ってフォーマ...
-
インデザインのテキスト流し込み
-
複数テキストファイルをエクセ...
おすすめ情報