使用Textbox作为过程(子)输入参数

时间:2018-02-01 07:30:29

标签: vba excel-vba excel

我的代码有问题。如果你能帮我到我错的地方,我会很高兴的。

这是我的工作表(名称是SetSheet)代码部分; textfield.defaultTextAttributes.updateValue(spacing, forKey: NSKernAttributeName) 是我的ActiveX命令按钮,我尝试选择我的工作目录。 cmdSelProjectDir_Click()是我的ActiveX文本框,选择了写入此目录的路径。 SetSheet.txtSetWorkDir是我的程序,我称之为"设置"模块。

但是我并没有以适当的方式构建它会像#34; Type Mismatch"这样的错误。但我不知道如何将这种类型的结构应用于代码,因为我将在我的其他工作表中使用此GetFolder子过程。

GetFolder(txtDir)

这是我的程序;

'/SetSheet Page
    Sub cmdSelProjectDir_Click()
    Dim txtDir As TextBox
    Set txtDir = SetSheet.txtSetWorkDir
    Call Settings.GetFolder(txtDir)
    End Sub

1 个答案:

答案 0 :(得分:3)

对于ActiveX文本框,您必须使用MSForms.TextBox而不是TextBox

Dim txtDir As MSForms.TextBox

Sub GetFolder(txtDir As MSForms.TextBox)