【问题标题】:VBA Combine values in 2 userform textboxes into a third textboxVBA将2个用户表单文本框中的值合并到第三个文本框中
【发布时间】:2019-02-03 16:40:54
【问题描述】:

我很难从文本框 1 和文本框 2 中获取值以组合并显示在用户窗体上的文本框 3 中。 Textbox1 和 Textbox2 被锁定,值是动态的并且从单选按钮控件自动填充。我尝试了以下方法,但它没有在 textbox3 中显示组合结果,我认为这是因为文本框 1 和 2 中的值是单选按钮上计数器控件的结果。见图片链接。

Private Sub TextBox3_Change()
    textbox3.text=Textbox1.text & Textbox2.text
End Sub

【问题讨论】:

  • 我认为在 TextBox3_Change 事件过程中设置 textbox3 的值不是一个好主意。
  • 按照 Jeeped 上面所说的,你能不能把这段代码放在另一个方法中,比如每当 textbox1 或 2 改变时?

标签: excel vba textbox userform


【解决方案1】:

我发现下面的代码效果最好,您的值将被合并。我在 s&g 的值之间放置了一个空格。

Private Sub TextBox2_Change()
    Me.TextBox3.Value = Me.TextBox1.Value & " " + Me.TextBox2.Value
End Sub

【讨论】:

  • 这成功了!您能帮我理解为什么使用 textbox 2_change 有效而 textbox3_change 无效吗?
  • 因为您将 TextBox 1 和 2 中的值放入 TextBox 3。TextBox 3 在值被传输到那里之前不会更改,因此获取它们的唯一方法是更新其中一个其他两个文本框。
  • 啊,我明白了!感谢您花时间向我解释逻辑。 :)
  • 很高兴能帮上忙。
【解决方案2】:

你可以试试下面的代码:

Private Sub TextBox2_Change()
   TextBox3.Value = TextBox1.text & TextBox2.text
End Sub

希望有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-16
    • 1970-01-01
    • 2014-03-29
    • 1970-01-01
    • 2021-07-07
    相关资源
    最近更新 更多