我有一个函数用于提取表单中标签的一部分。
Public Sub setLabelForRefresh(lbl As Label)
Dim i As Integer
i = 0 'InStr(1, lbl.Caption, "de")
Debug.Print i
End Sub
Public Sub callit()
setLabelForRefresh (frmMain.lblBalancete)
End Sub
然而,当我运行它时,我的类型不匹配。
我尝试了MSForms.Label并将其传递给ByVal和ByRef。
有什么想法吗?
答案 0 :(得分:3)
你可以这样做。
将其作为MSForms.Label
接受Private Sub setLabelForRefresh(ByRef lbl As MSForms.Label)
MsgBox (lbl.name)
MsgBox (lbl.Caption)
End Sub
Call
你将它标记为传递给它。
Private sub callit()
Call setLabelForRefresh(Me.Label1)
End if
或正如罗里指出的那样。不要使用括号。
Private sub callit()
setLabelForRefresh Me.Label1
End if