我正在尝试创建一个函数来编写内容,在csv输出文件中创建新行和新列 这是我的功能:
Function WriteOutputToCSV(strCSVOutput)
'Check if file exists & write the data
On Error Resume Next
Set objUserCSV = objCSV.OpenTextFile(UserCSV, ForAppending)
If objCSV.FileExists(UserCSV) Then
If CStr(strCSVOutput) = "*newline*" Then
objuserCSV.Write vbcrlf
Else if CStr(strCSVOutput) = "*newcolumn*" Then
objuserCSV.value(columncount,1)="***"
objuserCSV.Write vbcrlf
columncount = columncount+1
Else
If CStr(InStr(1,strCSVOutput, ",")) Then
strCSVOutput = Chr(34) & strCSVOutput & Chr(34)
ElseIf CStr(Trim(strCSVOutput)) = "" Then
strCSVOutput = " "
End If
objUserCSV.Write strCSVOutput & ","
End If
Else
' file DNE
End If
objUserCSV.Close
End Function
但是它不起作用(语法错误说在''文件DNE之前错过了一行结束并且我不知道为什么它的错误)我也不认为新列的工作正常。有帮助吗?谢谢!
答案 0 :(得分:2)
Else
和if
之间的空格不应该存在。这一行:
Else if CStr(strCSVOutput) = "*newcolumn*" Then
应该假定为:
ElseIf CStr(strCSVOutput) = "*newcolumn*" Then