我必须迭代一个常量的字符串列表。据我所知,没有
for item in ("foo", "bar", "baz")
doSth(item)
next item
我想知道如何优雅地编程这样的结构。
答案 0 :(得分:1)
优雅?你决定了。
尝试:
Sub test()
Dim x As Variant
For Each x In Array("foo", "bar", "bas")
Debug.Print x
Next
End Sub
答案 1 :(得分:0)
你的问题有点泛,但是,你可以使用For Each
来做到这一点。我会粘贴一些自己的代码,然后你会看到它是如何工作的:
Sub Example()
Dim tempFolderStr As String
Dim tempFullStr As String
Dim objFolder As Object
Dim objFile As Object
Dim fs As Object
(...)
Set objFolder = fs.GetFolder(tempFolderStr)
For Each objFile In objFolder.Files
tempFullStr = tempFolderStr & objFile.name
Call Delete_File(tempFullStr)
Next objFile
End Sub
这将迭代它在tempFolderStr文件夹中找到的每个文件。
我将链接留给适当的MSDN文章:https://msdn.microsoft.com/en-us/library/5ebk1751.aspx