【VBA】テキストファイルに配列の中身を書き出す|ADODB.Stream
記事更新日:2022-12-30
配列をテキストファイルに書き出したい
ADODB.Streamで書き出し
クラスを作る
クラス名はGoTxtとしてみる
Option Explicit
Private objSt As Object
Private txtFilePath As String
Private ary As Variant
Private Const asSaveCreateOverWrite As Long = 2 '指定したファイルが既に存在する場合、上書きする
Private Const asWriteLine As Long = 1 'ファイルに書き込む際、テキスト文字列と行区切り文字を書き込む
Private Sub Class_Initialize()
Set objSt = CreateST
End Sub
'配列と書き出し先のパスを受け取る
Public Sub Out( _
ByVal vAry As Variant, _
ByVal vPath As String)
ary = vAry
txtFilePath = vPath
OutputTxtFile
End Sub
Private Sub OutputTxtFile()
With objSt
.Charset = "UTF-8"
.Open
WriteTxt
.SaveToFile txtFilePath, adsavecreateoverwrite
.Close
End With
End Sub
'配列の中身を1つずつ書き込み(一次元配列の場合)
Private Sub WriteTxt()
Dim text As String
Dim i As Long
For i = LBound(ary) To UBound(ary)
text = ary(i)
.WriteText text, asWriteLine
Next i
End Sub
必要なもの
使い方
Dim ary As Variant
Dim path As String
ary = (配列を準備)
path = (パスを指定)
Set GoTxt = New GoTxt
GoTxt.Out ary, path
2022-12-30
編集後記:
この記事の内容がベストではないかもしれません。