VBA窗体ComboBox点击下拉按钮无数据?试试这个方法!

你是否遇到过在VBA窗体中使用ComboBox控件时,点击下拉按钮却没有任何数据显示的问题?你是否尝试了各种方法却依然无法解决?别担心,本文将为你提供一个简单有效的解决方案。

问题描述:

在VBA窗体'销售明细添加'中,有一个ComboBox控件'ComboBox1'。你编写了以下代码,希望在点击下拉按钮时加载数据:vbaPrivate Sub 销售明细添加() ' 清空ComboBox1中的选项 ComboBox1.Clear ' 将工作表'业务公司'的B10到B200单元格的数据添加到ComboBox1中 Dim ws As Worksheet Set ws = ThisWorkbook.Sheets('业务公司') Dim rng As Range Set rng = ws.Range('B10:B200') Dim cell As Range For Each cell In rng ComboBox1.AddItem cell.Value Next cellEnd Sub

然而,当你运行代码并点击下拉按钮时,ComboBox1中仍然没有任何数据。

解决方案:

问题很可能出在你没有将代码与正确的窗体事件关联起来。你需要将代码放到ComboBox1的DropDown事件中,而不是Click事件或其他事件。

步骤:

  1. 打开VBA编辑器,找到窗体'销售明细添加'的代码。2. 在窗体代码中找到ComboBox1DropDown事件。3. 将之前的代码粘贴到ComboBox1_DropDown事件中。修改后的代码如下:vbaPrivate Sub ComboBox1_DropDown() ' 清空ComboBox1中的选项 ComboBox1.Clear ' 将工作表'业务公司'的B10到B200单元格的数据添加到ComboBox1中 Dim ws As Worksheet Set ws = ThisWorkbook.Sheets('业务公司') Dim rng As Range Set rng = ws.Range('B10:B200') Dim cell As Range For Each cell In rng ComboBox1.AddItem cell.Value Next cellEnd Sub

原理:

DropDown事件会在ComboBox的下拉列表即将显示时触发。将代码放到该事件中,可以确保在用户点击下拉按钮时加载数据。

总结:

通过将代码与DropDown事件关联,你就能轻松解决VBA窗体ComboBox下拉按钮无数据的问题。记得在编写VBA代码时,选择正确的事件非常重要,这可以避免很多不必要的麻烦。

VBA窗体ComboBox下拉按钮无数据解决办法

原文地址: https://www.cveoy.top/t/topic/TfS 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录