【问题标题】:textbox_exit on vba dynamic control workaroundvba 动态控件上的 textbox_exit 解决方法
【发布时间】:2016-10-07 22:02:01
【问题描述】:

我创建了一个包含动态创建的文本框的表单。当用户离开单元格时,我需要将框重新格式化为货币格式。动态创建的表单没有 TextBox_Exit 事件,有解决方法吗?

我尝试了更改事件和按键事件,但没有得到任何有用的输出。除了放置“格式化文本框按钮”之外,有没有办法模拟事件或做一些事情来获得正确的格式?

我可以通过将值放入 excel 中,将单元格格式化为货币,然后以正确的格式将其拉回用户表单来“伪造”,但这对用户输入数据没有帮助.有任何想法吗?

【问题讨论】:

  • 写一个封装文本框的类怎么样?然后您可以在类中处理退出事件并保持您创建的所有对象(文本框)的格式直接?
  • Exit 事件不会针对 WithEvents 文本框公开。在此处阅读第 6 篇文章以获得替代方案:mrexcel.com/forum/excel-questions/…
  • @PeterT 我不知道该怎么做。这是我第一次运行动态控件,我不确定如何封装文本框。
  • @Rory,谢谢。我正在看那个。看起来它可能会起作用。

标签: vba excel


【解决方案1】:

我可以建议跟踪更改事件并执行以下操作吗?

Private Sub TextBox1_Change()
If InStr(TextBox1.Value, "$") Then
Label1.Caption = "Money"
Else
Label1.Caption = "Cents"
End If
End Sub

【讨论】:

    猜你喜欢
    • 2020-05-09
    • 2010-10-26
    • 2011-04-13
    • 1970-01-01
    • 1970-01-01
    • 2011-08-03
    • 2018-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多