2016-10-28 5 views
0

Я использую доступ для записи данных в текстовый файл, но я получаю эту ошибкуОшибка записи данных в текстовый файл

недопустимый вызов процедуры или аргумент

Что мне нужно изменить в эту процедуру, чтобы данные могли быть успешно записаны? У меня есть доступ к пути, и файл уже существует и правильно записан в моем коде.

Function WriteData(fulllocale As String, tblName As String, CString As String) 
    Dim fso As Object 
    Set fso = CreateObject("Scripting.FileSystemObject") 

    Dim Fileout As Object 
    Set Fileout = fso.OpenTextFile("C:\Test.txt", ForAppending, True) 
    Fileout.Write fulllocale & "," & tblName & "," & CString & vbCrLf 
    Fileout.Close 
End Function 

ответ

3

ForAppending не объявлена, и так как вы, видимо, поздно связаны ваши Scripting.FileSystemObject, она становится инициализируется локальной Variant с ним это значение по умолчанию.

Вы можете предотвратить это в будущем, поставив Option Explicit в верхней части всех ваших модулей.

Либо добавьте ссылку на исполняемый файл Microsoft Scripting Runtime (нет абсолютно никаких причин), либо используйте целочисленное значение IOMode. В этом случае ForAppending, который равен 8:

Set Fileout = fso.OpenTextFile("C:\Test.txt", 8, True) 
+0

Это удаляет ошибку, но записывает мусор в текстовый файл. Как «㩃 呜 獥 屴 捁 潣 湵 楴 杮 愮» Мне это нужно на английском-США –

Смежные вопросы