VBAを使用して末尾に[0D 0A(VBCRLF)]なしでテキストファイルを書き込む方法

VBAを使用して末尾に[0D 0A(VBCRLF)]なしでテキストファイルを書き込む方法

私はプロセスを開発しています

FileSystemObject を使用してテキスト ファイルをコピーし、Excel データに従ってテキスト ファイルの内容を編集します。

元のテキストファイルの改行コードは[0A(VBLF)]ですが、

編集後、更新されたテキストファイルの改行コードは[0D 0A(VBCRLF)]になります。

改行コードを元のテキストファイルとして書きたいと思います。

これを行う最善の方法は何ですか? よろしくお願いします。

答え1

テキストファイルを1行ずつ書き込む場合は、改行を選択できます。

Sub sampleWriteVBLF()

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set objFile = fso.CreateTextFile("D:\test.txt", True)

    objFile.Write "Hello" & vbLf
    objFile.Write "World" & vbLf

    objFile.Close

End Sub

ここに画像の説明を入力してください

            VBA       VBA               HEX     NAME
LF    \n    VbLf      Chr(10)           0x0A    Line Feed
CR    \r    VbCr      Chr(13)           0x0D    Carriage Return
CR+LF \r\n  VbCrLf    Chr(10)&Chr(13)   0x0D0A  Carriage Return Line Feed    

編集:.write常にCRLF改行が追加されるため、を使用する必要があります.WriteLine。しかし、LF改行が既にあります

関連情報