【问题标题】:Bizzare Listbox Populating Issue; Listbox will not populate奇怪的列表框填充问题;列表框不会填充
【发布时间】:2013-09-18 10:56:02
【问题描述】:

我有一个奇怪的问题。这是背景:我正在从另一个应用程序自动化 excel。我创建了一个名为“WorkbookSelection”的用户表单,并在该表单上放置了一个名为“WorkbookList”的列表框控件和一个名为“SelectionComplete”的命令按钮。

在显示表单之前,我已经确定 excel 已打开,列表框的目的是在 excel 中显示打开的工作簿,以便用户可以从中选择一个来导入数据和导出新数据。

这是我试图用来填充列表框的代码:

Private Sub WorkbookSelection_Initialize()

Dim ExcelAp                 As Excel.Application
Dim FedExWkbk               As Excel.Workbook
Dim OpenedWorkbooks         As Excel.Workbooks
Dim i                       As Integer

Set ExcelAp = Excel.Application
Set OpenedWorkbooks = ExcelAp.Workbooks

For Each FedExWkbk In OpenedWorkbooks
    WorkbookList.AddItem FedExWkbk.Name
Next FedExWkbk

End Sub

我也试过

Private Sub WorkbookSelection_Activate()

Private Sub UserForm_Initialize()

不过运气不好。如果有人有任何建议,我会全力以赴。

【问题讨论】:

    标签: vba listbox automation userform


    【解决方案1】:

    好的,我在这里找到了解决方案。逐步完成子程序后,我注意到它没有在打开的工作簿中循环,因此存在一些问题,即它没有获取正确的 excel 实例,但仍然没有创建它自己的实例。因此,我将一行修改为后期绑定:

    Set ExcelAp = Excel.Application
    

    Set ExcelAp = GetObject(, "Excel.Application")
    

    你瞧,它有效。只是想我会把这个留给将来可能会找到这种情况的答案的任何人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-27
      • 1970-01-01
      相关资源
      最近更新 更多