WSHやExcel VBAマクロでファイルの文字コード変換をしたい場合は、ADODB.Streamで。
*** ファイルの文字コードをShift-JISからUTF-8に変える [#n689bb7c]
Sub SJIS2UTF8(FilePath As String)
'元のファイルストリーム(Shift_JIS)
Set stream1 = CreateObject("ADODB.Stream")
With stream1
.Type = 2 'adTypeBinary=1, adTypeText=2
.Charset = "shift-jis"
.Open
.LoadFromFile FilePath
.Position = 0
End With
'UTF-8化
Set stream2 = CreateObject("ADODB.Stream")
With stream2
.Type = 2 'adTypeBinary=1, adTypeText=2
.Charset = "utf-8"
.Open
End With
stream1.CopyTo stream2
'UTF-8ファイルの先頭BOMを削除
Set stream3 = CreateObject("ADODB.Stream")
With stream3
.Type = 1 'adTypeBinary=1, adTypeText=2
.Open
End With
stream2.Position = 3
stream2.CopyTo stream3
stream3.Savetofile FilePath, 2 'adSaveCreateNotExist=1, adSaveCreateOverWrite=2
stream3.Close
stream2.Close
stream1.Close
End Sub