提问人:Kudor 提问时间:9/4/2023 更新时间:9/4/2023 访问量:23
当所有迭代器都声明为“Variant”时,如何使用“For Each”中的迭代器作为函数的 String 参数?[复制]
How can I use an iterator from a "For Each" as a String parameter to a function when all iterators are declared as "Variant"? [duplicate]
问:
因此,我尝试使用“For Each”块中的迭代器 OutDirectoryPath 作为此函数的参数:
Function GetFilePathArrayFromDirectory(directoryPath As String) As String()
'some code here
End Function
以下是我通过它的方式:
Dim OutDirectoryPath
For Each OutDirectoryPath In OutFolderPaths
Dim FilePathArray() As String
FilePathArray = GetFilePathArrayFromDirectory(OutDirectoryPath)
Next OutDirectoryPath
问题是我收到编译错误,因为“For Each”块中的每个迭代器都自动声明为“Variant”,并且仅在运行时将其指定为 String。我的问题是,如果迭代器始终具有“Variant”类型,而不将函数的参数更改为“Variant”,我该如何使用它们作为参数?
答:
1赞
Ike
9/4/2023
#1
您可以使用以下命令将变体转换为字符串:CStr
FilePathArray = GetFilePathArrayFromDirectory(CStr(OutDirectoryPath))
评论
Dim OutDirectoryPath As String
?String
For Each