【问题标题】:Combo box populated successfully yesterday but failed today昨天成功填充组合框,但今天失败
【发布时间】:2020-02-04 11:55:46
【问题描述】:

我使用了一个简单的代码从工作表列表中动态填充组合框。在星期六,组合框已成功填充。

周日,我通过添加新的表单控件/新代码来使用代码。然后突然组合框填充停止填充值并且根本没有错误消息。

所以我关闭了那个工作簿,重新启动了笔记本电脑,并使用非常简单的代码开始了一个新工作簿,我在星期六得到了成功的结果。尽管如此,它仍然无法正常工作,也没有给我任何错误消息。

然后,我在另一台笔记本电脑上使用新的 Excel 工作簿尝试了该代码。在另一台笔记本电脑上,组合框已成功填充我想要的值。

我的第一台笔记本电脑怎么了?我该怎么做才能使组合框填充再次起作用?

代码是在工作表/激活环境中编写的。这是代码:

Option Explicit

Private Sub Worksheet_Activate()

    Dim sh6 As Worksheet

    For Each sh6 In ThisWorkbook.Worksheets
        Me.Test2_cbbox.AddItem sh6.name
    Next sh6

End Sub

【问题讨论】:

  • 在即时窗口中键入 ?Application.EnableEvents 时的值是多少?

标签: excel vba combobox populate


【解决方案1】:
Me.Test2_cbbox.AddItem sh6.name

是ActiveX 控件的语法

如果您的组合框是 Form 控件,则使用:

Me.Shapes("Test2_cbbox").ControlFormat.AddItem sh6.Name

【讨论】:

  • 非常感谢。但我的是一个 ActiveX 控件。通过切换到“Me.Shapes("Test2_cbbox").ControlFormat.AddItem sh6.Name”,我得到运行时错误“438”,说 Object 不支持此属性或方法。所以我仍然会坚持使用原始代码。但再次感谢您的回复!
  • 不客气。如果您的组合框是 ActiveX 组合框并且您的代码无法使用正确的语法,请按照@SNicolaou 评论进行检查
【解决方案2】:

此处的链接确定了我的问题并提出了一些解决方案。 2014 年 12 月 16 日 8:22 编辑的 #13 帖子是解决我的问题的帖子。谢谢大家的帮助。

Microsoft Excel ActiveX Controls Disabled?

【讨论】:

  • 好吧,我在 2019 年 10 月 7 日发布的解决方案工作了一周...今天我的 ActiveX 控件再次无法运行.....求救!!
猜你喜欢
  • 1970-01-01
  • 2016-05-28
  • 1970-01-01
  • 1970-01-01
  • 2011-05-02
  • 1970-01-01
  • 2016-01-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多