首页
/
每日頭條
/
科技
/
vba實現展開菜單
vba實現展開菜單
更新时间:2026-10-29 13:41:11

VBA中自定義菜單命令組、自定義工具欄主要是利用CommandBars對象的方法進行添加,添加的自定義菜單命令組和自定義工具欄将出現在“加載項”選項卡中。

1 自定義菜單命令組

Sub AddCommandbars()

Dim myBarPopup As CommandBarPopup

Dim ArrOne As Variant

Dim ArrTwo As Variant

Dim ArrThree As Variant

Dim i As Byte

On Error Resume Next

'定義各命令按鈕的标題;

ArrOne = Array("多工作簿查找", "創建工作表目錄", "設置頁眉頁腳")

'定義各命令按鈕的圖标ID;

ArrTwo = Array(281, 283, 285)

ArrThree = Array("FormOpen", "PERSONAL.XLSB!創建工作表目錄", "PERSONAL.XLSB!設置頁眉頁腳")

'CommandBars對象可以使用.controls.Add方法新建“加載項”的“菜單命名”組;

With Application.CommandBars("worksheet menu bar")

'重置内置命令欄,避免重複添加;

.Reset

'聲明彈出式控件

Set myBarPopup = .Controls.Add(msoControlPopup)

With myBarPopup

'設置命令欄控件的标題

.Caption = "controls"

For i = 0 To UBound(ArrOne)

With .Controls.Add(msoControlButton)

.Caption = ArrOne(i)

.FaceId = ArrTwo(i) '控件圖标指定;

.OnAction = ArrThree(i)

End With

Next

End With

End With

Set myBarPopup = Nothing

End Sub

2 自定義工具欄

Sub AddBars()

Dim myBar As CommandBar

Dim ArrOne As Variant

Dim ArrTwo As Variant

Dim ArrThree As Variant

Dim i As Byte

On Error Resume Next

ArrOne = Array("多工作簿查找", "創建工作表目錄", "設置頁眉頁腳")

ArrTwo = Array(9893, 284, 9590)

ArrThree = Array("FormOpen", "PERSONAL.XLSB!創建工作表目錄", "PERSONAL.XLSB!設置頁眉頁腳")

Application.CommandBars("MyToolBar").Delete

'CommandBars對象可以使用Add方法新建“加載項”的“自定義工具欄”;

Set myBar = Application.CommandBars.Add(MyToolBar)

With myBar

.Visible = True

For i = 0 To UBound(ArrOne)

With .Controls.Add(msoControlButton)

.Caption = ArrOne(i)

.FaceId = ArrTwo(i)

.OnAction = ArrThree(i)

.Style = msoButtonIconAdnCaptionBelow

End With

Next

End With

Set myBar = Nothing

End Sub

3 工作薄打開時自動執行定義的過程

Private Sub Workbook_Open()

frmFind.Show

Call AddCommandbars

Call AddBars

End Sub

vba實現展開菜單(自定義菜單命令組)1

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
5個免費自學網站
5個免費自學網站
大家好!這裡是辦公黑科技,我是科科。今天又是超幹貨分享的一天,今天給各位整理了5個我自己用過感覺還不錯的免費自學資源網站,包含了辦公、考證、運營學習以及編程等方面。簡直是白嫖黨的福利,建議收藏使用!1.ExcelHomeExcelHome社...
2026-10-29
麒麟所有芯片的發布時間
麒麟所有芯片的發布時間
華為Mate50隻有4G版,實在是一件丢人的事。餘承東也說,作為5G領導者,卻沒有5G手機發布,尴尬。在美國制裁之下,明知麒麟芯片強于高通,但隻能選用高通芯片,更是丢人。當然,用丢人兩個字,并非貶低華為,而是國人心中的痛,也期待麒麟盡快自主...
2026-10-29
ps裁切工具使用方法
ps裁切工具使用方法
前面小編也是帶大家認識了PS的圖層打組及順序變換的認識。今天我們來學習裁剪工具的使用方法及基本快捷鍵。由于小編也是初學者,有講得不對的地方還望各位看客莫怪,還望大家多多支持!我們今天學習的剪裁工具就是對圖像文件進行剪裁的一個工具,我們的畫布...
2026-10-29
k神甩尾教學
k神甩尾教學
大家看标題應該知道這次的主題内容,講解的就是關于藍拳的勾拳的無限應用,非常簡單華麗而且很實用的說。好,那麼下面我們詳細講解一下勾拳的各種神奇作用。首先是第一點.原地單勾加正常的勾拳追擊.可以做到無限的浮空推進。大家看到圖中的原地單勾效果沒。...
2026-10-29
電腦屏幕出現黑點是怎麼回事
電腦屏幕出現黑點是怎麼回事
電腦使用久了,顯示屏上會出現一些黑點,雖然不容易發現,但代表内屏出現了像素點損壞,黑點嚴重還會影響電腦使用,需要及時進行維修。現在,使用AIDA64能夠輕松檢測電腦屏幕黑點。接下來筆者向大家演示如何使用AIDA64檢測電腦屏幕黑點。一、點擊...
2026-10-29
Copyright 2023-2026 - www.tftnews.com All Rights Reserved