Excel VBA セルの値をテキストに出力するサンプル

Excel VBAのセルの値をテキストに出力するサンプルです。

目次

サンプル テキストに出力するサンプル
  テキストに追記で出力するサンプル

テキストに出力するサンプル

サンプルとしてセルのA2に「赤」、A3に「黄」、B4に「青」があります。
これをテキストに出力します。

 

テキストに出力するサンプルです。

Option Explicit
Sub test1()
    Dim fileName As String 'ファイル

    '1 出力するファイルの場所
    fileName = ActiveWorkbook.Path & "\test1.txt"
    'fileName = "d:\test1\test1.txt"
    
    '2 対象のファイルを開く
    Open fileName For Output As #1
    
    '3 セルの値をファイルに出力する
    Print #1, Cells(2, 1).Value 'A2を指定
    Print #1, Cells(3, 1).Value 'A3を指定
    Print #1, Cells(4, 2).Value 'B4を指定
     
    '4 対象のファイルを閉じる
    Close #1

End Sub

6行目は、選択中のブックと同じフォルダにファイルを出力します。
7行目のようにファイルの出力先を指定することもできます。
10行目は、対象のファイルをOutputモードで開いています。Outputモードは追記せず上書きします。
13~15行目は、printでセルの値をファイルに出力しています。
18行目は、closeでテキストファイルを閉じています。
出力されるファイルの文字コードはShift_JISです。

実行結果

上記コードを実行した結果です。コードを何度実行しても追記はされません。

 

テキストに追記で出力するサンプル

サンプルとしてセルのA2に「赤」、A3に「黄」、B4に「青」があります。
これをテキストに追記で出力します。

 

テキストに追記で出力するサンプルです。

Option Explicit
Sub test1() 
    Dim fileName As String 'ファイル

    '1 出力するファイルの場所
    fileName = ActiveWorkbook.Path & "\test1.txt"
    'fileName = "d:\test1\test1.txt"
    
    '2 対象のファイルを開く
    Open fileName For Append As #1
    
    '3 セルの値をファイルに出力する
    Print #1, Cells(2, 1).Value 'A2を指定
    Print #1, Cells(3, 1).Value 'A3を指定
    Print #1, Cells(4, 2).Value 'B4を指定
     
    '4 対象のファイルを閉じる
    Close #1

End Sub

6行目は、選択中のブックと同じフォルダにファイルを出力します。
7行目のようにファイルの出力先を指定することもできます。
10行目は、対象のファイルをAppendモードで開いています。Appendモードは追記で書き込みます。
13~15行目は、printでセルの値をファイルに出力しています。
18行目は、closeでテキストファイルを閉じています。
出力されるファイルの文字コードはShift_JISです。

実行結果

上記コードを3回実行した結果です。追記されています。

以下は、MicrosoftのVBAのopenのリンクです。
https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/open-statement

関連の記事

VBA For文の使い方(処理を繰り返す)
VBA For Each文のサンプル(Excel/Access)
Excel VBA セルの値を取得/設定するサンプル

△上に戻る