shift-jis読み込みUTF-8書き込みCSV保存するマクロ
を示す。
■Excel-VBA shift-jis読み込みUTF-8書き込みCSV保存するマクロ
Sub sample35() ActiveWorkbook.SaveAs "D:\CSVファイル.csv", FileFormat:=xlCSV Workbooks("CSVファイル.csv").Close Dim csvPass As String Dim TXT As String csvPass = "D:\CSVファイル.csv" With CreateObject("ADODB.Stream") .Type = 2 .Charset = "shift-jis" .Open .LoadFromFile ("D:\CSVファイル.csv") TXT = .readText(-1) .Position = 0 .Charset = "UTF-8" .writeText TXT .SaveToFile csvPass, 2 .Close End With End Sub※[2.] アクティブワークブックをCSV形式で保存。
※[3.] CSVファイルを閉じる。
※[4.~5.] 変数宣言。
※[6.] CSVファイルのパスを文字列として格納。
※[8.~19.] 「ADODB.Stream」使ってCSVファイルを
shift-jis読み込み、UTF-8書き込みする。
■マクロ実行対象
文字コードをshift-jisからUTF-8に変換したいCSVファイル。
■マクロ実行結果
マクロを実行するとアクティブワークブックがCSVファイルとしてDドライブに保存され、
文字コードがshift-jisからUTF-8に変換される。
■あとがき
今回はExcel VBAマクロ。shift-jis読み込みUTF-8書き込みCSV保存するマクロ
を示した。
CSVファイルの文字コードを
shift-jisからUTF-8に変換したいときに使う。
コード先頭行に「Option VBASupport 1」
Option VBASupport 1記述してLibreOffice Basicでも試したが、
エラーが出て使用できなかった。
以上。