1

У меня есть текст, который я создаю, а затем хочу добавить к нему текст. Но я получаю сообщение об ошибке: неверный вызов процедуры или аргумент.

Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim Fileout As Object
Dim filePath As String
filePath = "C:\myFile.txt"


If FileExists(filePath) = False Then
Set Fileout = fso.CreateTextFile(filePath, True, True)
Fileout.Write Msg
Fileout.Close
Else
Set Fileout = fso.OpenTextFile(filePath, ForAppending, TristateFalse) <<<<<== ERROR HERE
Fileout.Write Msg
Fileout.Close
End If

Function FileExists(strFullPath As String) As Boolean
'Check if a file or folder exists
If Not Dir(strFullPath, vbDirectory) = vbNullString Then FileExists = True
End Function

1 ответ1

2

Я получаю сообщение об ошибке: неверная процедура или аргумент.

Set Fileout = fso.OpenTextFile(filePath, ForAppending, TristateFalse)

Вы передаете TristateFalse качестве аргумента 3. Это должен быть аргумент 4.

Пожалуйста, прочитайте документацию.

Описание

Открывает указанный файл и возвращает объект TextStream, который можно использовать для чтения или добавления в файл.

Синтаксис

object.OpenTextFile(filename[, iomode[, create[, format]]])

Метод OpenTextFile состоит из следующих частей:

Part      Description
----      -----------
object    Required. Always the name of a FileSystemObject.
filename  Required. String expression that identifies the file to open.
iomode    Optional. Indicates input/output mode. Can be one of two constants, either ForReading 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. The default is False.
format    Optional. One of three Tristate values used to indicate the format of the opened file. If omitted, the file is opened as ASCII.

Исходный метод OpenTextFile

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .