(VBA )UTF-8(bom無)でテキスト書き出
(VBA )UTF-8(bomu無し)でテキストファイルに書き出す
下記記マクロを使ってテキストファイルに書き出すとShift-JISになるようです。
下記コードを修正するとどのようになりますか ?
------------------------------------------------------------------
'Chapterシートをテキストファイルへ書き出す
Open "C:\Users\NOBU\Desktop\chap_Output.txt" For Output As #1
EndLow = WS2.Cells(Rows.Count, "A").End(xlUp).Row
For I = 1 To EndLow
Print #1, WS2.Cells(I, "A").Value
Next
Close #1
------------------------------------------------------------------
途中結果です。
UTF-8(BOM有)での書き出す方法はネットで探して
下記コードでうまく書き出し出来たのですが(BOM無し)の方法が良く分かりません。
以下が参考になりそうですが、修正の参考になりませんか ?
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_065.html
------------------------------------------------------------------------
'ADODB.Streamオブジェクトを生成
Set ado = CreateObject("ADODB.Stream")
'ADODB.Streamで扱う文字コードを設定する
ado.Charset = "UTF-8"
'ADODB.Streamを開く
ado.Open
'開いたADODB.Streamに内容を保管する
'adWriteLineは改行する時に入れる
For I = 1 To EndLow
ado.WriteText WS2.Cells(I, "A").Value, adWriteLine
Next
'ADODB.Streamに保管されている内容をファイルに保存する
ado.SaveToFile "C:\Users\Nubo\Desktop\chap_Output.txt", 2
'ADODB.Streamを閉じる
ado.Close
'終わったのが分かるようにメッセージを出す
MsgBox "完了!"
Set ado = Nothing
End Sub