【问题标题】:Textbox Change Event Error on Backspace --VBA Userform退格键上的文本框更改事件错误--VBA用户表单
【发布时间】:2017-04-12 05:52:42
【问题描述】:

我在用户表单上有 2 个文本框:tbQty1、tbQty2。我希望 tbQty2 值等于 tbQty1.value * 2。以下简单代码 [_Change()] 有效,除非我删除或退格 tbQty1 的值。我收到运行时错误 13 类型不匹配

Private Sub tbQty1_Change()

tbQty2.Value = tbDoorQty.Value * 2

End Sub

我已尝试使用 tbQty1.value = "" 等和 Keypress (IF KeyAscii = 8 Then tbQty1 = "") 的 IF 语句。一切都以同样的方式爆炸,我只是错过了一些东西。感谢您的帮助

【问题讨论】:

  • 编辑:在这个例子中,tbDoorQty 应该是 tbQty1。代码已修改。
  • try if isumeric(tbQty1.value) then ,这将检查它是否不是空白和数字
  • Sivaprasath -- 很好,它有效。我与另一个 IF 配对,因此如果第一个文本框具有“”值,则清除第二个文本框。回答而不是评论,如果您愿意,我可以检查“已回答”。谢谢

标签: excel onchange userform vba


【解决方案1】:
If isnumeric(tbQty1.value) then
 'statements
end if

【讨论】:

    猜你喜欢
    • 2015-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-16
    • 1970-01-01
    • 1970-01-01
    • 2017-05-07
    • 2018-12-12
    相关资源
    最近更新 更多