重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

Sub ImportTextFile()

Dim DestBook As Workbook, SourceBook As Workbook
Dim DestCell As Range
Dim RetVal As Boolean


Application.ScreenUpdating = False

Set DestBook = ActiveWorkbook
Set DestCell = ActiveCell

RetVal = Application.Dialogs(xlDialogOpen).Show("*.txt")

If RetVal = False Then Exit Sub

Set SourceBook = ActiveWorkbook

Range(Range("A1"), Range("A1").SpecialCells(xlLastCell)).Copy


DestBook.Activate
DestCell.PasteSpecial Paste:=xlValues

SourceBook.Close False

End Sub

上記のコードは指定したテキストファイルをシートに出力するものなのですが、
任意で複数のテキストファイルを選んだ時に、同じシートに選んだ複数のテキストファイルを
A1セルをはじめとしてをA列の最終セルにすべてのファイル順番に張り付けたいのです。

今の状態だとウィザード画面でいちいち設定しないといけないのでテキストをそのままの状態で
いいのでウィザード画面を飛ばしてできればなおいいです。
ぜひ、アドバイスお願いします。

A 回答 (2件)

> RetVal = Application.Dialogs(xlDialogOpen).Show("*.txt")



そもそもここはOpenFileDialogでよかないか、とは思いますがそれはさておいて。

ものすごーく大雑把な指針を示すと、

・「複数ファイルを選択する方法」を考える
・「選択された複数のファイル」を繰り返し処理可能な形にする
・あとはforなりfor eachなりwhileなりでループ処理

って流れになります。
    • good
    • 0
この回答へのお礼

大変参考になりました。
ありがとうございました。

お礼日時:2013/04/29 22:37

「先にテキストファイルを1つにまとめてしまう」では?



コマンドプロンプトで、COPYコマンドを使用。/bオプション必須。
    • good
    • 0
この回答へのお礼

そのようなやり方もあるんですね。
いろいろ試してみようと思います。
ありがとうございました。

お礼日時:2013/04/29 22:38

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!