【发布时间】:2016-10-23 04:25:09
【问题描述】:
我的问题是一旦从我的用户窗体中的下拉列表(组合框)中选择一个国家,我的文本框没有显示任何输出。什么都没发生。文本框应该对 ComboBox 中选择的任何值执行 VLookUp。 ComboBox(名称)是“国家”。
其中一个文本框的代码:
Private Sub TextBox2_Change()
Dim myRange As Range
Set myRange = Worksheets("All Countries Validation").Range("A:R")
TextBox2.Value = Application.WorksheetFunction.VLookup(Country.Value, myRange, 2, False)
【问题讨论】:
-
可能需要做一些调试,比如 Country 的值是多少?试试 Debug.Print(Application.WorksheetFunction.VLookup(Country.Value, myRange, 2, False))。另外,当您只需要第 2 列时,为什么还要定义 A:R 的范围?最后,尝试不带 .WorksheetFunction 的 Application.Vlookup,它会产生可能有帮助的不同类别的错误消息。
-
所以我尝试进行调试,但没有任何反应。我还创建了一个按钮来显示“Country.value”的消息框,但单击它时没有任何反应。如果我选择一个国家并在 ComboBox 中按键盘上的 Enter 键,则会出现自动化错误,调用的对象已与其客户端断开连接
-
Idk 如果它有所作为,但这是发生在带有标签的用户窗体中。这是用户窗体中的第二个选项卡
-
您是否打开了即时窗口以便查看 Debug.Print 的结果? (菜单栏上的视图 > 立即窗口)。最好将调试行放在 TextBox2.Value = etc 之前的行上。当您进行测试时,是否有相关国家/地区的实际数据 - 您希望找到任何东西吗?是否有不止一行与一个国家/地区有关,例如多行中的同一个国家/地区?
-
忽略这一点,请参阅下面 user3598756 的答案
标签: vba excel combobox vlookup userform