| 
    
     |  | CSVの区切りを[,]から[;]に変更するため CSVFaileを作成するマクロをネットから引用させていただき作成したのが以下のとうりです
 この中で
 ' ADODB.Streamを参照
 Set file_source = CreateObject("ADODB.Stream")
 この部分「("ADODB.Stream")」の意味が理解できません
 教えていただけないでしょうか
 よろしくお願いいたします
 
 Sub CSV作成()
 ' **********************************
 '       初期設定
 ' **********************************
 Dim csv_file_name As String
 Dim code_source As String
 Dim code_target As String
 Dim char_source As String
 Dim char_target As String
 Dim char_temp As String
 
 ' オブジェクト変数の定義
 Dim file_source As Object
 Dim file_target As Object
 
 ' 保存ファイル名を決定
 csv_file_name = ActiveWorkbook.Path + "\" + ActiveSheet.Name + ".csv"
 ' 文字コードを指定
 code_source = "Shift_JIS"
 code_target = "UTF-8"
 ' 置換文字を指定
 char_source = ","
 char_target = ";"
 ' 表示無効
 Application.DisplayAlerts = False
 ' **********************************
 '     CSVファイルの保存
 ' **********************************
 ' 仮シートを複製
 ActiveSheet.Copy
 ' CSV形式で保存
 ActiveWorkbook.SaveAs Filename:=csv_file_name, FileFormat:=xlCSV, _
 CreateBackup:=False
 ' 仮シートを閉じる
 ActiveWindow.Close Savechanges:=False
 ' **********************************
 '   CSVファイルをUTF-8に変換
 ' **********************************
 ' ADODB.Streamを参照
 Set file_source = CreateObject("ADODB.Stream")
 ' CSVファイルの読み込み
 With file_source
 .Charset = code_source
 .Open
 .LoadFromFile csv_file_name
 char_temp = .ReadText
 End With
 ' 置換処理
 char_temp = Replace(char_temp, char_source, char_target)
 ' CSVファイルの書き出し
 Set file_target = CreateObject("ADODB.Stream")
 With file_target
 .Charset = code_target
 .Open
 .WriteText char_temp
 End With
 ' 文字コードの変換
 file_source.copyto file_target
 file_target.savetofile csv_file_name, 2
 End Sub
 
 |  |