gpt4 book ai didi

excel - 将 ListObject 列添加到用户窗体组合框列表时出错

转载 作者:行者123 更新时间:2023-12-04 20:59:38 26 4
gpt4 key购买 nike

我有一个名为 UFCustInfo 的用户表单。在工作表区域,我有一个宏来显示表单 -

Private Sub CmdShowInputForm()
UFCustInfo.Show
End Sub

这被分配给工作表上的按钮(表单控件)。

在用户窗体区域,我还有一个初始化例程来填充用户窗体上的组合框——
Private Sub UserForm_Initialize()
Me.CBCustName.List = ActiveSheet.ListObject("CustInfo").ListColumns(1).DataBodyRange.Value
End Sub

当我单击命令按钮显示表单时,我得到 Runtime Error '438': Object does not support this property or method ,并且调试突出显示“UFCustInfo.Show”行。

如果我禁用(注释)初始化行,表单将加载但(当然)组合框不会填充。

我还有代码来添加新的、清晰的表单和关闭表单,只要我不运行初始化代码,它们都可以正常运行。我错过了什么?

最佳答案

根据您提供的有关您的列表对象的有限信息,我认为此修复程序可能对您有用。我认为 ListObject是一个类型和 ListObjects (复数)是您尝试访问的集合。

' *Add this to top of your module to identify future syntax errors before running *'

Option Explicit

Private Sub UserForm_Initialize()
Const COL_NUM as Integer = 1 ' Which column you want to access '

Dim ws As Worksheet
Dim i As Long
Dim tbl As ListObject

Set ws = ActiveSheet

Set tbl = ws.ListObjects("CustInfo")

CBCustName.Clear

With tbl
' Add cell values one at a time to the Combo Box List
For i = 1 To tbl.DataBodyRange.Rows.Count
CBCustName.AddItem tbl.DataBodyRange.Cells(i, COL_NUM)
Next
End With

End Sub

关于excel - 将 ListObject 列添加到用户窗体组合框列表时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38921322/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com