gpt4 book ai didi

excel - 遍历文件夹代码的下标超出范围

转载 作者:行者123 更新时间:2023-12-04 21:40:13 25 4
gpt4 key购买 nike

我正在尝试使用以下代码遍历文件夹。但是,我不断收到下标超出范围错误。谁能解释我能做些什么来解决这个问题?

Sub LoopThroughFolder()

Const FileSpec As String = "*.xls"
Dim y As Integer
Dim MyFolder As String
Dim MyFile As String
Dim iDot As Integer
Dim FileRoot As String
Dim FileExt As String

Dim ArrayData() As Variant


For y = 2009 To 2030

ReDim Preserve ArrayData(y, 12)
MyFolder = ActiveWorkbook.Path & "\" & y & "\"

i = 1
MyFile = Dir(MyFolder & FileSpec)
Do While Len(MyFile) > 0
iDot = InStrRev(MyFile, ".")

If iDot = 0 Then
FileRoot = MyFile
FileExt = ""
Else
FileRoot = Left(MyFile, iDot - 1)
FileExt = Mid(MyFile, iDot - 1)
End If

MyFile = Dir
ArrayData(y, i) = FileRoot
MsgBox ArrayData(y, i)
i = i + 1
Loop

Next y

End Sub

最佳答案

根据这个 msdn link , 你只能ReDim Preserve在数组的最后一个维度上,在您的情况下,您只能更改 12ReDim Preserve ArrayData(y, 12) .更改数组参数的顺序将解决此问题。

关于excel - 遍历文件夹代码的下标超出范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16074179/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com