谢谢你抽出时间点击这个问题。我一直在将这个数据集放在我的vba代码上时遇到问题。我总是继续获取文件'溢出'然后'文件已经打开'错误。我使用的数据集是一段时间内功耗的数据记录。这组数据意味着要放入7个数组中。这些是数据集。
https://data.world/databeats/household-power-consumption
我的代码出了什么问题?有什么建议?谢谢。
我的代码到目前为止
Dim ID(50) As String, Day(50) As Date
Dim Time(50) As Integer, GlobelActivePower(50) As Integer
Dim Sub1(50) As Integer, Sub2(50) As Integer, Sub3(50) As Integer
Public N As Integer
Sub ReadFileSmall()
Dim Infile As String
Infile = ThisWorkbook.Path & "\Power_smallDataset.csv"
Open Infile For Input As #1
N = 0
Do Until EOF(1)
Input #1, ID(N), Day(N), Time(N), GlobelActivePower(N), Sub1(N),
Sub2(N), Sub3(N)
N = N + 1
Loop
Range("A4").Select
For indx = 0 To N - 1
ActiveCell.Offset(indx, 0).Value = ID(indx)
ActiveCell.Offset(indx, 1).Value = Day(indx)
ActiveCell.Offset(indx, 2).Value = Time(indx)
ActiveCell.Offset(indx, 4).Value = GlobelActivePower(indx)
ActiveCell.Offset(indx, 5).Value = Sub1(indx)
ActiveCell.Offset(indx, 6).Value = Sub2(indx)
ActiveCell.Offset(indx, 7).Value = Sub3(indx)
Next
Close #1
End Sub
数组大小很奇怪。以下是csv文件的数据。
Sub ReadFileSmall()
Dim Infile As String
Dim vDB
Infile = ThisWorkbook.Path & "\Power_smallDataset.csv"
Workbooks.Open Filename:=Infile, Format:=2
With ActiveSheet
vDB = .UsedRange
End With
ActiveWorkbook.Close (0)
Range("A4").Resize(UBound(vDB, 1), ubouns(vDB, 2)) = vDB
End Sub