vba - 将子目录添加到动态数组

时间:2014-01-20 20:19:55

标签: vba

我正在创建一个将子目录添加到数组的宏。子目录的数量未指定,因此每次重新调整数组的大小为数组计数器的大小。当我尝试将数组值设置为索引值“count”时,我得到:compile error:expected array。

我尽量保持我的代码尽可能简单,对我来说它似乎应该有效,但显然不是。有人会介意指出我弄糊涂的地方吗?

'DEFINE PATH AND SUBDIRECTORY DIR
Path = "C:\Users\MyComp\Documents\test\folders\" 
Dim SubDir
SubDir = Dir(Path, vbDirectory)



'CREATE ARRAY AND COUNTER
Dim folderindex As Long 
Dim count As Integer
count = 0



'ADD SUBDIRECTORY PATHNAMES TO ARRAY
Do Until SubDir = ""   
    folderindex(count) = Path & SubDir
    count = count + 1
    ReDim Preserve folderindex(count)
SubDir = Dir()   
Loop



End Sub

感谢您的帮助

1 个答案:

答案 0 :(得分:2)

当您声明变为数组的变量时,您需要以这种方式使用括号:

Dim folderindex() As String

重要!! 此外,您需要声明变量As String(类型),因为您要将文本保留在内部,而不是数字。