如何获取VBE CommandBars控件ID编号列表并了解各ID功能?
获取VBE命令栏控件ID及对应功能列表的方法
以下是用于最小化VBE窗口的代码:
Sub Macro1() Dim cbcTemp As CommandBarControl On Error Resume Next Set cbcTemp = Application.VBE.CommandBars.FindControl(ID:=752) If Not cbcTemp Is Nothing Then cbcTemp.Execute End If On Error GoTo 0 End Sub
上述代码中用到的控件ID为752,对应「最小化VBE窗口」功能。
如果你需要获取所有VBE命令栏控件的ID及对应功能,可以通过以下几种方法:
方法1:用VBA代码遍历导出
编写一段VBA代码,自动遍历所有VBE命令栏控件,将ID、标题、所属命令栏等信息导出到工作表,通过标题即可对应到具体功能:
Sub ExportVBEControlIDs() Dim cmdBar As CommandBar Dim cmdCtrl As CommandBarControl Dim ws As Worksheet Dim rowNum As Integer Set ws = ThisWorkbook.Sheets.Add(After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)) ws.Name = "VBE控件ID列表" '写入表头 ws.Cells(1, 1).Value = "控件ID" ws.Cells(1, 2).Value = "控件标题" ws.Cells(1, 3).Value = "所属命令栏" rowNum = 2 '遍历所有VBE命令栏及控件 For Each cmdBar In Application.VBE.CommandBars For Each cmdCtrl In cmdBar.Controls ws.Cells(rowNum, 1).Value = cmdCtrl.ID ws.Cells(rowNum, 2).Value = cmdCtrl.Caption ws.Cells(rowNum, 3).Value = cmdBar.Name rowNum = rowNum + 1 Next cmdCtrl Next cmdBar '自动调整列宽 ws.Columns.AutoFit End Sub
运行代码后,当前工作簿会新增一个名为「VBE控件ID列表」的工作表,包含所有控件的详细信息。
方法2:查阅Office官方文档
微软官方文档会列出Office组件(含VBE)的命令栏控件ID及对应功能说明,可直接搜索相关内容获取。
方法3:使用第三方控件查看工具
借助专门的Office控件查看工具,能直观展示所有命令栏控件的ID、属性和功能,便于快速查询。
内容的提问来源于stack exchange,提问作者Danny Coleiro
相关产品推荐
相关产品推荐

