0

我正在尝试创建一个函数来写入内容,在 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”之前的行缺少一个结尾,我不知道为什么它错了)而且我不认为新列正在工作。有什么帮助吗?谢谢!

4

1 回答 1

2

你在Else和之间有一个if不应该存在的空间。这一行:

Else if CStr(strCSVOutput) = "*newcolumn*" Then

应该是:

ElseIf CStr(strCSVOutput) = "*newcolumn*" Then
于 2013-06-24T16:33:46.307 回答