Cara Membuat List Level PopUp Menu File Project VBA Excel
Menu-menu dan Sub Menu File Project Excel
Dalam file project vba excel, untuk mengeksekusi atau menjalankan intruksi/kode baik untuk membuka user form, menampilkan message box, memanggil fungsi atau yang lainnya sering menggunakan CommandButton atau dengan Object Shapes pada sebuah sheets. Selain itu, untuk menjalan intruksi / beberapa kode tersebut seuai kebutuhan bisa dipecantik menggunakan popup menu-menu dengan beberapa list level atau sub menu yang dibuat khsusus.Menu-menu dan sub menu dengan vba excel ini selain untuk mempercantik visual project yang dibuat, juga untuk mengelompokkan beberapa menu sesuai kategori sehingga mempermudah user dalam mengekesekusi intruksi kode sesuai kebutuhan. List Level PopUp Menu ini bisa dibuat dan ditempatkan pada object yang ada di user form, bisa juga pada sheet tertentu dengan event before double click maupun before right click
Cara Membuat List Level PopUp Menu dengan VBA Excel
Pada contoh project ini, akan membuat popup menu-menu dan sub menu nya untuk diakses dengan event before double click dan before right click pada sheet tertentuSebelum membuat menu-menu ini, silahkan buat dulu file project excel dengan salah satu sheetnya misalnya diberinama List_Level_Menu lalu buka visual basic editor (Alt + F11) dan ikuti langkah-langkah berikut:
Langkah 1: Membuat PopUP Menu dan SubMenu
Pada Visual Basic Editor (VBE), insert/buat sebuah module (misalnya module1) lalu tambahkan beberapa kode berikut pada module1:Option Explicit
Public MyPopUpMenu
Sub MyPopUpMenuY()
Call MyPopUpMenuX
MyPopUpMenu.ShowPopup
Set MyPopUpMenu = Nothing
End Sub
Sub MyPopUpMenuX()
Dim MENU1 As CommandBarPopup, MENU2 As CommandBarPopup, MENU3 As CommandBarPopup
Set MyPopUpMenu = Application.CommandBars.Add(Position:=msoBarPopup, temporary:=True)
With MyPopUpMenu
With .Controls.Add
.Caption = "Login"
.FaceId = 893
.OnAction = "MenuLogin"
End With
With .Controls.Add
.Caption = "Menu Utama"
.FaceId = 65
.OnAction = "MyPopUpMenuY"
End With
Set MENU1 = .Controls.Add(Type:=msoControlPopup)
With MENU1
.Caption = "Menu 1"
With .Controls.Add
.Caption = "Sub Menu 1_1"
.FaceId = 1016
.OnAction = "SubMenu1_1"
End With
End With
Set MENU2 = .Controls.Add(Type:=msoControlPopup)
With MENU2
.Caption = "Menu 2"
With .Controls.Add
.Caption = "Sub Menu 2_1"
.FaceId = 4
.OnAction = "SubMenu2_1"
End With
With .Controls.Add
.Caption = "Sub Menu 2_2"
.FaceId = 32
.OnAction = "SubMenu2_2"
End With
End With
'dan seterusnya....
With .Controls.Add
.Caption = "Menu Lain"
.FaceId = 65
.OnAction = "MyPopUpMenuY"
End With
Set MENU3 = .Controls.Add(Type:=msoControlPopup)
With MENU3
.Caption = "Menu 3"
With .Controls.Add
.Caption = "Sub Menu 3_1"
.FaceId = 246
.OnAction = "SubMenu3_1"
End With
With .Controls.Add
.Caption = "Sub Menu 3_2"
.FaceId = 32
.OnAction = "SubMenu3_2"
End With
With .Controls.Add
.Caption = "Sub Menu 3_3"
.FaceId = 32
.OnAction = "SubMenu3_3"
End With
End With
'dan seterusnya....
With .Controls.Add
.Caption = "Help"
.FaceId = 49
.OnAction = "MenuHelp"
End With
With .Controls.Add
.Caption = "About"
.FaceId = 487
.OnAction = "MenuAbout"
End With
With .Controls.Add
.Caption = "Quit"
.FaceId = 241
'MCloseQuitApp => modul yang sudah dibuat pada project:
'Cara menutup (close/quit) file project aplikasi excel sebelumnya
.OnAction = "MCloseQuitApp"
End With
End With
End Sub
'---------------------------------------------------------------------------
'sample onaction untuk diakses oleh popup menu dan
'submenu yang telah dibuat
'sesuaikan dengan kebutuhan
'---------------------------------------------------------------------------
Sub MenuLogin()
MsgBox "Sample MenuLogin...!!!", vbExclamation, "Info"
End Sub
Sub SubMenu1_1()
MsgBox "Sample SubMenu1_1...!!!", vbExclamation, "Info"
End Sub
Sub SubMenu2_1()
MsgBox "Sample SubMenu2_1...!!!", vbExclamation, "Info"
End Sub
Sub SubMenu2_2()
MsgBox "Sample SubMenu2_2...!!!", vbExclamation, "Info"
End Sub
Sub SubMenu3_1()
MsgBox "Sample SubMenu3_1...!!!", vbExclamation, "Info"
End Sub
Sub SubMenu3_2()
MsgBox "Sample SubMenu3_2...!!!", vbExclamation, "Info"
End Sub
Sub SubMenu3_3()
MsgBox "Sample SubMenu3_3...!!!", vbExclamation, "Info"
End Sub
Sub MenuHelp()
MsgBox "More Info WWW.JTPedia.COM...!!!", vbInformation, "Info"
End Sub
Sub MenuAbout()
MsgBox "Custom Menu Home Project VBA Excel...!!!", vbInformation, "Info"
End Sub
Langkah 2: Menampilkan PopUP Menu dan SubMenu
Masih pada Visual Basic Editor (VBE), misalnya pada sheet1(List_Level_Menu) tambahkan kode berikut:Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
Cancel = True
Call MyPopUpMenuX
MyPopUpMenu.ShowPopup
Set MyPopUpMenu = Nothing
End Sub
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
On Error Resume Next
Cancel = True
Call MyPopUpMenuX
MyPopUpMenu.ShowPopup
Set MyPopUpMenu = Nothing
End Sub
Langkah 3: Menyimpan File Project
Setelah semua kode dibuat, silahkan simpan project ini misalnya dengan nama:- Cara Membuat List Level PopUp Menu File Project VBA Excel.xlsm
- Cara Membuat dan Menampilkan PopUp Menu Project VBA.xlsm
- Atau yang lainnya...