用于创建新行和新列的功能

时间:2013-06-24 16:08:19

标签: windows csv vbscript windows-scripting

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

1 个答案:

答案 0 :(得分:2)

Elseif之间的空格不应该存在。这一行:

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

应该假定为:

ElseIf CStr(strCSVOutput) = "*newcolumn*" Then