首页 > 解决方案 > 从 ComboBox 插入变量

问题描述

我设计了 UserForm1。我有组合框。我想在一个模块中打开 UserForm1,从 ComboBox 中选择一些东西,然后在 UserForm1 中单击 OK 后,应该将 ComboBox 分配给模块中的变量,并且代码应该进一步运行。

我定义了公共用户窗体:

Public Sub UserForm_Initialize()

Dim TCol As Long, CCol As Long
Dim wsRoadmap As Worksheet

Set wsRoadmap = Sheets("Roadmap")

TCol = wsRoadmap.Cells(4, Columns.Count).End(xlToLeft).Column

Me.ComboBox1.Clear

'loop from column C to the last used column of 5th row
For CCol = 3 To TCol
    
    If VBA.Trim(wsRoadmap.Cells(4, CCol).Value) <> "" Then
        Me.ComboBox1.AddItem wsRoadmap.Cells(4, CCol).Value
    End If
    
Next CCol

End Sub

我在用户表单中定义了公共按钮

Public Sub but2_Click()

CB1 = Me.ComboBox1.Value
Me.Hide

End Sub

我在模块中定义了公共变量

Public CB1 As String

当我在我的模块中调用用户表单时,它会弹出,但代码正在进一步运行,而不是等待我在用户表单中的选择......

标签: excelvbacombobox

解决方案


Christofer Weber 提供了解决方案:“在用户窗体属性中,您是否将“ShowModal”设置为 True?如果没有,请尝试“。谢谢克里斯。


推荐阅读