首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >清除Excel VBA组合框

清除Excel VBA组合框
EN

Stack Overflow用户
提问于 2012-10-30 05:36:08
回答 4查看 30.2K关注 0票数 1

我使用的是excel 2010。

我想在工作表中清除组合框的内容(清除到空白,就像它未选中时一样),但我不知道如何选择和清除。我尝试选择一个组合框,如下所示:

代码语言:javascript
运行
复制
Sheet1.ComboBox1.Clear

但Sheet1对象下没有'ComboBox‘。选择我的组合框的唯一方法是使用这个:

代码语言:javascript
运行
复制
Sheet1.Shapes("Drop Down 24")

我不知道如何选择和清除内容,有人能帮我吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-10-30 05:50:52

关于

代码语言:javascript
运行
复制
ActiveSheet.Shapes.Range(Array("Drop Down 24")).Select
With Selection
    .ListFillRange = ""
End With
票数 1
EN

Stack Overflow用户

发布于 2012-10-30 11:11:53

我假设您实际上希望将控件的显示值设置为空。在这种情况下,对于Drop Down Object,正如您指出的那样,您将执行以下操作:

代码语言:javascript
运行
复制
Sheet1.Shapes("Drop Down 2").OLEFormat.Object.Value = 0

其中0表示从列表中选择了哪个元素,即无。

如果这不起作用,那么您实际上可能正在处理一个ComboBox,在这种情况下,您需要使用以下代码:

代码语言:javascript
运行
复制
Sheet1.Shapes("Drop Down 2").OLEFormat.Object.Object.Value = ""

注这段代码是在Excel2003中创建和测试的(我在这台机器上有),因此在Excel2010上到达实际对象的路径可能会略有不同。)

票数 1
EN

Stack Overflow用户

发布于 2013-08-09 04:02:17

作为一个真正的程序员,我更喜欢这种方式。这并不依赖于工作表上的excel“范围内存选择”。

代码语言:javascript
运行
复制
Set oCombo = Sheets("SheetName").Shapes("cmbComboName").ControlFormat
For I = oCombo.ListCount To 1 Step -1
    oCombo.RemoveItem (I)
Next
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13130034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档