我是VBA的新手,所以这应该是一个简单的。我正在尝试调用带有字符串的sub。这个字符串需要放在Me之后。它应该看起来像Me.StringHere
VB给我一个编译错误,说找不到成员或数据方法。该字符串是一个实际的文本框控件,所以它应该在理论上工作。我刚开始尝试调用subs,所以它可能很简单,我不确定。这是代码。
Sub CueBannerActive(ControlToUpdate As String)
'Activates the cue banner font settings
With Me.ControlToUpdate
.Font.Italic = True
.Font.Name = "Verdana"
.ForeColor = &H80000011
End With
End Sub 'CueBannerActive(ControlToUpdate As String)
以下是我如何称呼它。
CueBannerActive "txbShipToNameOne"
答案 0 :(得分:1)
首先,您需要更改Object的变量,您需要这样做,因为VBA并不了解' txbShipToNameOne'作为一个对象,所以你不能使用它,因为我可以理解你正在使用一个表单,试图改变标签/对象。所以子将会像:
Sub CueBannerActive(ByVal ControlToUpdate As Object)
'Activates the cue banner font settings
With ControlToUpdate
.Font.Italic = True
.Font.Name = "Verdana"
.ForeColor = &H80000011
.Caption = "I was here"
End With
End Function
我在一个按钮中调用它,如下所示:
Private Sub cmdButton_Click()
Call CueBannerActive(Me.txbShipToNameOne)
End Sub
Me.txbShipToNameOneis
您想要更改的对象,因此如果您想重复使用许多标签的代码,您可以这样做。