ここから本文です

Excel VBA のテキスト(スペース区切りのテキスト)読み込み方法をご指導下さい。

bashahunaさん

2010/5/2502:02:49

Excel VBA のテキスト(スペース区切りのテキスト)読み込み方法をご指導下さい。

First_1.txt、First_2.txt、First_3.txtのファイルがC:\TEMP\にあります。
それぞれA1:B10にデータが有りA列とB列はスペースで区切られています。

First_1.txt のA1:A10とB1:B10をエクセルシート名XXXのA1:A10とB1:B10に、
First_2.txt のB1:B10をエクセルシート名XXXのC1:C10へ
First_3.txt のB1:B10をエクセルシート名XXXのD1:D10へ
読み込むには下記のコードをどう修正追記すればよろしいでしょうか。
ご指導の程よろしくお願い致します。


Sub TXT_Read()
readTxtFile "XXX", "C:\TEMP\First_1.txt", True
readTxtFile "XXX", "C:\TEMP\First_2.txt"
readTxtFile "XXX", "C:\TEMP\First_3.txt"
End Sub

Public Sub readTxtFile(sheetName As String, fileName As String, Optional isReadColumnsA As Boolean = False)
Static readColumn As Integer
Dim myBook As Workbook
Set myBook = ThisWorkbook
With Workbooks.Open(fileName:=fileName)
If isReadColumnsA = True Then
.Sheets(1).Columns(1).Copy Destination:=myBook.Sheets(sheetName).Cells(1, 1)
readColumn = 2
End If
.Sheets(1).Columns(2).Copy Destination:=myBook.Sheets(sheetName).Cells(1, readColumn)
readColumn = readColumn + 1
.Close
End With
End Sub

閲覧数:
2,851
回答数:
1
お礼:
25枚

違反報告

ベストアンサーに選ばれた回答

グレード

カテゴリマスター

hotosysさん

2010/5/2507:31:03

>With Workbooks.Open(fileName:=fileName)

With Workbooks.Open(fileName:=fileName, Format:=3)
として、「区切り文字をスペース」として読み込むでは?
ヘルプの「Openメソッド」を参照。

質問した人からのコメント

2010/5/29 01:53:29

拡張子がtxtの場合、参考例は行単位で読み込むものがほとんどなので、たいへん
勉強になりました。CSV読み込みコードの微修正で対応できるんですね。hotosysさん今後もご指導の程よろしくお願い致します。

ちょい足しを取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

よしもと爆笑コント動画

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

ID/ニックネームを選択し、「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する