Sub Command3_Click()
Dim fs As FileSystemObject
Dim f As TextStream
Dim a As Variant
Dim i As Long
Set fs = CreateObject("Scripting.FileSystemObject")
' Read file into array
If fs.FileExists("C:\Abhi\Code test\rbc.csv") Then
Set f = fs.OpenTextFile("C:\rbc.csv", ForReading, False)
a = Split(f.ReadAll, vbNewLine, -1, vbTextCompare)
f.Close
Else
MsgBox "The file path is invalid.", vbCritical, vbNullString
Exit Sub
End If
' Write line > 1 to file
Set f = fs.OpenTextFile("C:\rbc.csv", ForWriting, True)
For i = 1 To UBound(a)
f.WriteLine a(i)
Next
f.Close
End Sub
这是我正在使用的代码。我想删除我的CSV文件的第一行并使用所有其他行。在我输入的csv文件中,第一行始终是
01-JUL-2014,RBC_BASELII_07012014 ,,,,,,,,,,,,,,,,,,,
现在如果我删除逗号并保留一个逗号,程序运行正常。但是如果我用10-12个逗号保留原始形式的行,那么当我运行程序时整个文件就会变空。
答案 0 :(得分:1)
看起来你在Split()命令之后有一个字符串数组。尝试以下(从i = 2开始迭代):
For i = 2 To UBound(a)
f.WriteLine a(i)
Next
此致