背景
我正在使用userform执行多次计算,以便我可以锁定模块中的公式(故意不使用保护表并在电子表格中执行此操作)。我已经在适当的位置列出了一个Label,我打算使用userform.Show vbModeless,以便我可以获得函数来显示写入文本框的信息。
问题:
在尝试编译时,我得到一个运行时错误13:在我的函数上键入不匹配试图获取TextBox的值(代码中的行用 a = calcs.Controls(“TextBox11”) “)。价值)。
问题:
我没有看到什么不匹配,因为我正在使用Controls(“”)间接调用控件。有谁看到我可能有F'd吗?
此外,这是一个pipedream在userform上有功能更新,因为值被输入到同一用户窗体上的文本框?
问题代码:
我的用户表单的名称是 calcs 。
Option Explicit
Private Sub button_show()
calcs.Show vbModeless
calcs.Controls("Label95").Caption = calc1()
End Sub
Private Function calc1() As Double
Dim a As Double, b As Double, c As Double, d As Double, e As Double
a = calcs.Controls("TextBox11").Value 'FLAG
b = calcs.Controls("TextBox1").Value
c = calcs.Controls("TextBox2").Value
d = calcs.Controls("TextBox3").Value
e = calcs.Controls("TextBox4").Value
calc1 = (a * b * d * 1000) / (1000 * c * e * 1)
End Function