【发布时间】:2014-03-16 15:03:42
【问题描述】:
Private Sub a()
b 1,
End Sub
Private Sub b(p1 As Variant, Optional p2 As Variant)
Stop
End Sub
我在 Access 中使用 VBA。我想要一个带有 2 个参数的过程 - 最后一个是可选的。 为什么 Private Sub a() 不能编译。
如何通过调用 b() 运行 a() 并且不传递任何参数作为第二个参数?
【问题讨论】:
-
只是
b 1没有逗号 -
just b 1 有效,但问题是假设我希望有三个参数,最后 2 个是可选的,如果缺少第三个(最后一个)参数,它总是返回编译错误
-
使用命名参数:
b p1:=1 -
Yes OK 谢谢 Private Sub a() b p1:=1, p2:=1 End Sub Private Sub b(p1 As Variant, Optional p2 As Variant, Optional p3 As Variant) Stop End Sub p3 在 Sub a() 中的任何地方都没有提到,因此它丢失了。而不是 b 1,1,谢谢
标签: vba parameters optional