我正在运行一个将字符串变量输出到文件的循环。循环的每次运行都会改变字符串。在某些循环的运行中,我收到错误无效的过程调用或函数。
rst
是表的记录集,fl
是一个对象,我将其设置为这样的文件:
Set fso = CreateObject(fileType)
Set fl = fso.createtextfile(path)
这是循环:
Do Until rst.EOF
start = rst.Fields(fieldName))
fl.writeLine start
rst.MoveNext
Loop
答案 0 :(得分:1)
尝试使用Open
命令:
Dim FF As Byte
FF = FreeFile
Open "C:\Users\MacroMan\SomeFolder\myTextFile.txt" For Output As #FF
'// Rest of code here
start = rst.Fields(fieldName)
Print #FF, start
'// Rest of code here
Close #FF
答案 1 :(得分:-1)
创建文件:
Dim fso as Object
Dim f1 as Object
Dim fileType as String
Dim path as String
Dim myFile as Byte
fileType = "Scripting.FileSystemObject"
path = "C:\myFolder\fileName"
Set fso = CreateObject(fileType)
Set fl = fso.createtextfile(path)
路径 - 确保路径指向您具有读/写权限的文件夹。据我所知,以下说明适用于Windows 7-10。它们也可能对XP有好处。
确保在创建文件后关闭该文件以启用读/写。
f1.close
set f1 = Nothing
现在您可以打开文件并在其末尾添加行而不删除上一行。
myFile = FreeFile
Open path For Output As #myFile
Write #myFile, "Something or other " & chr(9) & variableName & rst.Fields(0).Value
#myFile
是我们在代码中提供文件的名称write
是一个在文件最后一行之后添加一行的命令。只要可以将implicitly转换为字符串/ char类型,就可以将不同的变量类型与&
连接起来。我用过:
"something or other"
chr(9)
,一个制表符variableName
,字符串类型rst
记录集中第一个字段的内容:rst.Fields(0).Value
。在方括号rst.Fields().Value
中,您可以为第二个字段添加1
,为第三个字段添加2
,依此类推。或字符串"columnName"
。完成循环并写入文件后,请确保将其关闭。
Close #myFile