VBA テキストファイルをエクセルにコピー(動画あり)

ExcelVBA_テキストファイルをエクセルへコピペ_アイキャッチ ExcelVBA

エクセルマクロで、テキストファイルをエクセルにコピーするVBAコードをご紹介します。

textファイルの中身を全てコピーして、エクセルに貼り付けしたような状態になります。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

テキストファイルをエクセルにコピー(パターン1)

以下のマクロを実行すると、メモ帳のデータを読み込んでExcelに貼り付けます。


Sub テキストファイルを一括読み込みしてエクセルへコピー()

Dim WordListAddress As String
Dim TxtFileList As String
Dim InputCnt As Long
Dim TxtNum  As Long
Dim InputWord() As String
Dim TxtFile As String
Dim Buf As Variant
Dim fso As Object
Dim i As Long

    Set fso = CreateObject("Scripting.FileSystemObject")

    'テキストファイルのパスを指定
    WordListAddress = "C:\Users\admin\Desktop\テスト\チェックリスト.txt"

    'テキストファイルのファイル名を拡張子つきで取得
    TxtFileList = fso.GetFileName(WordListAddress)
    TxtNum = FreeFile

    Open WordListAddress For Input As TxtNum
        While Not EOF(1)
            Line Input #TxtNum, TxtFileList

            '単語をタブ区切りで抽出
            Buf = Split(TxtFileList, vbTab)

            '配列の要素数を変更
            ReDim Preserve InputWord(InputCnt)

            '配列にテキストファイルの値を格納
            InputWord(InputCnt) = Buf(0)

            InputCnt = InputCnt + 1
        Wend
    Close TxtNum

    'エクセルシートへ書き込み
    For i = 0 To UBound(InputWord)
        Sheets("Sheet1").Cells(i + 1, 1) = InputWord(i)
    Next i

End Sub

 

マクロ実行後

テキストファイルの内容をエクセルシートに書き込みします。


 
 

テキストファイルをエクセルにコピー(パターン2)

以下のマクロを実行すると、テキストファイルを読み込んでワークシートに貼り付けます。


Sub メモ帳をエクセルへコピー()

Dim WordListAddress As String
Dim TxtFileList As String
Dim InputCnt As Long
Dim TxtNum  As Long
Dim InputWord(100, 1) As Variant
Dim TxtFile As String
Dim Buf As Variant
Dim fso As Object
Dim i As Long
Dim j As Long

    Set fso = CreateObject("Scripting.FileSystemObject")

    'テキストファイルのパスを指定
    WordListAddress = "C:\Users\admin\Desktop\テスト\チェックリスト.txt"

    'テキストファイルのファイル名を拡張子つきで取得
    TxtFileList = fso.GetFileName(WordListAddress)
    TxtNum = FreeFile

    Open WordListAddress For Input As TxtNum
        While Not EOF(1)
            Line Input #TxtNum, TxtFileList

            '単語をカンマ区切り「,」で抽出
            Buf = Split(TxtFileList, ",")

            For i = 0 To UBound(Buf)
                InputWord(InputCnt, i) = Buf(i)
            Next i

            InputCnt = InputCnt + 1
        Wend
    Close TxtNum

    'エクセルシートへ書き込み
    For i = 0 To UBound(InputWord)
        For j = 0 To 1
            Sheets("Sheet1").Cells(i + 1, j + 1) = InputWord(i, j)
        Next j
    Next i

End Sub

 

マクロ実行後

textファイルを一括で読み込み、エクセルへ出力します。


 
 

テキストファイルをエクセルにコピー(パターン3)

以下のマクロを実行すると、メモ帳を全て読み込んでエクセルへコピーします。


Sub テキストファイルを読込しエクセルへコピペ()

Dim WordListAddress As String
Dim TxtFileList As String
Dim InputCnt As Long
Dim TxtNum  As Long
Dim InputWord(100, 10) As Variant
Dim TxtFile As String
Dim Buf As Variant
Dim fso As Object
Dim i As Long
Dim j As Long

    Set fso = CreateObject("Scripting.FileSystemObject")

    'テキストファイルのパスを指定
    WordListAddress = "C:\Users\admin\Desktop\テスト\チェックリスト.txt"

    'テキストファイルのファイル名を拡張子つきで取得
    TxtFileList = fso.GetFileName(WordListAddress)
    TxtNum = FreeFile

    Open WordListAddress For Input As TxtNum
        While Not EOF(1)
            Line Input #TxtNum, TxtFileList

            '単語をカンマ区切り「,」で抽出
            Buf = Split(TxtFileList, ",")

            'txtファイルをループ(縦)
            If InputCnt < 100 Then
                For i = 0 To UBound(Buf)
                    'txtファイルをループ(横)
                    If i < 11 Then
                        InputWord(InputCnt, i) = Buf(i)
                    End If
                Next i
                InputCnt = InputCnt + 1
            End If
        Wend
    Close TxtNum

    'エクセルシートへ書き込み
    For i = 0 To UBound(InputWord)
        For j = 0 To 10
            Sheets("Sheet1").Cells(i + 1, j + 1) = InputWord(i, j)
        Next j
    Next i

End Sub

 

マクロ実行後

テキストファイルをコピーして、エクセルシートへ書き込みします。


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】テキストファイルを自動処理する使用例を見る
 

【エクセルマクロ】テキストファイルを自動操作する:超便利8選
エクセルマクロで、テキストファイルを自動で操作するVBAコードをご紹介します。どのマクロコードも、コピペで使用できます。ぜひお試しください!

 

[最速入門] ChatGPTに任せる Excelマクロ&VBA 面倒なプログラミングは秒で片づけよう

ChatGPTと対話しながら身につける、新しいVBA入門

Excelマクロ・VBAをAIと一緒にラクに習得したいなら、まず読んでおきたい一冊です!


★★★★★ 4.6 ※ Amazonカスタマーレビューより
マクロ記録とChatGPTを組み合わせた学習法が実践的で、すぐ現場で使える
「過不足のない指示」の出し方を学べ、AIとの対話スキルが身につく
変数・条件分岐・ループなどVBAの基礎もしっかり解説されている