类型不匹配运行时错误13

时间:2016-06-07 08:11:35

标签: vba excel-vba excel-2013 excel

Private Sub UserForm_Initialize()
    Dim a As String
    Dim h As Double
    Dim d As Double
    Dim r As Double

    a = ComboBox1.value
    r = TextBox2.value
    d = TextBox3.value
    h = TextBox4.value
End Sub

我在userform_initialize编写的上述代码中是否有任何问题.......我收到的错误类型不匹配我确信其余的代码没有问题

早些时候我在commandbutton1_click中定义了变量a,h,d,r,现在我刚将它们移到了userform_initialize,我收到了这种类型不匹配的错误

请帮帮我

1 个答案:

答案 0 :(得分:1)

类型不匹配意味着foo.Value评估的任何内容都无法强制转换为Double。 (也许这是一个空白的字符串)。

一种解决方法是编写表单代码

a = 0 'The default value
On Error Resume Next 'Switch off error handling
a = ComboBox1.Value
On Error Goto 0 'The idiomatic way of switching error handling back on.

或者更优雅地处理潜在错误。 (或许使用Len。)。