这是我的第一篇文章,所以请耐心等待。 我目前正在学习excel的VBA编码,我正在尝试读取.csv文件并对其进行解释。 然而,当我运行脚本时,我会收到错误'9'(下标超出范围),虽然代码仍然有效,但我需要摆脱它。 代码如下:
Sub OpenTextFile()
Worksheets("Ark1").ChartObjects.Delete
Close #1
Call chart
Dim path As String
path = "C:\hello"
Dim file As String
file = Range("C1").Value
Dim filetype As String
filetype = ".csv"
Dim FilePath As String
FilePath = path & file & filetype
Open FilePath For Input As #1
row_number = 0
Do Until EOF(1)
Line Input #1, LineFromFile
LineItems = Split(LineFromFile, ";")
ActiveCell.Offset(row_number, 1).Value = LineItems(2) <-Debug tells me problem is here
ActiveCell.Offset(row_number, 0).Value = LineItems(1)
row_number = row_number + 1
Loop
Close #1
End Sub
Private Sub chart()
Range("A1:A96").Select
ActiveSheet.Shapes.AddChart.Select
End Sub
Private Sub CommandButton1_Click() 调用OpenTextFile 结束子
现在我的“ActiveCell.Offset(row_number,1).Value = LineItems(2)”中出现错误(我怀疑下一行会发生同样的错误)
我无法找到解决问题的方法,因为我的Do循环中的EOF函数应该定义循环的结束,并且数据被复制得很好。 如果有帮助,我已使用本指南编写代码:http://www.homeandlearn.org/open_a_text_file_in_vba.html - 提前,谢谢! :)