gpt4 book ai didi

vba - 如何检查Excel工作表是否包含activeX控件?

转载 作者:行者123 更新时间:2023-12-04 21:37:09 25 4
gpt4 key购买 nike

我尝试创建一个宏,放置在 Workbook_Open() 过程中,它为组合框添加项目,名为 CBTask for 每个 在工作簿中,(其中有名为 CBTask 的组合框)。
不幸的是,以下代码会生成编译错误:找不到方法或数据成员”

我相信是因为不是每个工作表中有 CBTask (即使在错误恢复下一个也无济于事)。
有没有办法检查工作表是否包含组合框,所以我可以在尝试清除它或添加新项目之前进行检查?

Private Sub Workbook_Open()
Dim ws As Worksheet
Dim i As Integer
Dim strTaskName As String

On Error Resume Next
For Each ws In ThisWorkbook.Worksheets
ws.CBTask.Clear
strTaskName = taskName(1)
Do
ws.CBTask.AddItem strTaskName
strTaskName = taskName(i)
i = i + 1
Loop While taskName <> "LastOne"
Next ws
On Error GoTo 0
End Sub

(如您所见,此代码还使用附加函数“taskName(intSubtaskValue as integer)”将整数转换为字符串(例如 taksName(1) = "Task01", taskName(2) = "Task02...)

最佳答案

Worksheet类没有名为 CBTask 的成员这就是该代码失败的原因。我建议你使用 OLEObjects改为属性:

ws.OLEObjects("CBTask").Object.Clear

关于vba - 如何检查Excel工作表是否包含activeX控件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33733983/

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