で作業していないスクリプトを置き換えます。私はテキストファイルにコンマですべてのタブを置き換えるために、次のコードを使用しようとしていますUnicodeのTXTファイル
Const ForReading = 1
Const ForWriting = 2
Const TristateTrue = -1
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\Users\Tom\Desktop\CSV.txt", ForReading, TristateTrue)
strText = objFile.ReadAll
strTab = vbTab
strText = Replace(strText, strTab, ",")
objFile.Close
Set objFile = objFSO.OpenTextFile("C:\Users\Tom\Desktop\CSV.txt", ForWriting, TristateTrue)
objFile.Write strText
objFile.Close
添付fileのためにこれを実行している場合しかし、私が手エラー:
ライン17 シャア1 無効なプロシージャ呼び出しまたは引数
このファイルはExcelから作成されたUnicodeのtxtファイルです。
ファイルを開いてUTF-8形式で保存すると、コードが正常に動作します。しかし、私はコードでこの変換を行う方法を見つけることができません。
オリジナルのユニコードテキストファイルで作業するコードを手に入れることができますか、実行可能コード(vba/batch)を使用してファイルをUTF-8に変換する方法を見つけることができますか?ヘルプ
Opens a specified file and returns a TextStream object that can be used to read from, write to, or append to the file.
object.OpenTextFile(filename[, iomode[, create[, format]]])
object
Required. Object is always the name of a FileSystemObject.
filename
Required. String expression that identifies the file to open.
iomode
Optional. Can be one of three constants: ForReading, ForWriting, or ForAppending.
create
Optional. Boolean value that indicates whether a new file can be created if the specified filename doesn't exist. The value is True if a new file is created, False if it isn't created. If omitted, a new file isn't created.
format
Optional. One of three Tristate values used to indicate the format of the opened file. If omitted, the file is opened as ASCII.
から
うわー、私はそれを逃した、ありがとう!私はそれがブール値ではないので、CreateでTristateTrueがエラーを投げたと思ったでしょうか?それは今でも完璧に動作しますが、問題ありません。 – Tom