首页 > 解决方案 > 组合框更改值时自动更新用户表单标签

问题描述

我有一个带有 labelcaption 的用户表单,在填写组合框之前它是不可见的。

Private Sub ComboBox18_Change()
Dim Val As String

ThisWorkbook.Worksheets("User Dashboard").Range("L18").Value = Me.ComboBox18.Value
Label13.Caption = Sheets("User Dashboard").Range("K24").Text
Label13.Visible = True
End Sub

此标签值受其他组合框的影响,如果这些组合框更改,则应更新。

当任何/某个组合框(rankcombo)更新时,有没有办法可以更新 label13.caption?

我试过了 :

Private Sub ComboBox1_AfterUpdate()
Label13.Caption = Sheets("User Dashboard").Range("K24").Text
Label13.Visible = True 
End Sub

这个也是:

Private Sub Rankcombo_Change()
    Label13.Caption = Sheets("User Dashboard").Range("K24").Text
    Label13.Visible = True 
End Sub

任何事情都非常感谢。

标签: excelvba

解决方案


使用点击事件

Private Sub ComboBox1_Click()
    Label13.Caption = Sheets("User Dashboard").Range("K24").Text
    Label13.Visible = True 
End Sub

编辑:将标题更新提取到不同的过程,然后从多个组合框单击事件中调用它

像这样:

ComboBox1 点击事件:

Private Sub ComboBox1_Click()
    LabelCaptionUpdate
End Sub

ComboBox18 点击事件:

Private Sub ComboBox18_Click()
    LabelCaptionUpdate
End Sub

更新标签标题过程:

Sub LabelCaptionUpdate()
    Label13.Caption = Sheets("User Dashboard").Range("K24").Text
    Label13.Visible = True
End Sub

推荐阅读