Ant*_* E. 9 collections vba arguments list
我在Visual Basic for Aplications中有一个Collection对象的问题(我用它与Excel一起使用)
我有这个代码试图清空我必须重用的Collection对象:
Sub limpieza(ByRef listilla As Collection)
While listilla.Count <> 0
listilla.Remove (listilla.Count)
Wend
End Sub
Run Code Online (Sandbox Code Playgroud)
但当我打电话给:
Dim listado As New Collection
<I have some code here that add some values to the collection>
limpieza (listado)
Run Code Online (Sandbox Code Playgroud)
VBA对我说
参数不是可选的
并且代码不会运行.
我能做什么?我需要在循环的底部使用此集合清理,该循环重用Collection对象.
Dic*_*ika 30
如果要清空集合,而不是调用单独的过程,只需使用
Set listado = New Collection
Run Code Online (Sandbox Code Playgroud)
end*_*and 11
Dim listado As New Collection
<I have some code here that add some values to the collection>
limpieza listado
'this syntax also works
Call limpieza(listado)
Run Code Online (Sandbox Code Playgroud)
请注意,我删除()了参数.
传递时byref你想要这样做()是因为byval默认情况下VBA会传递它,除非你添加Call它.
这可能非常令人沮丧,因为subName(args)有时你经常会使用as语法,但会遇到这些问题.我一般Call mySubName(args)用来使事情更清楚.
| 归档时间: |
|
| 查看次数: |
26295 次 |
| 最近记录: |