All Topics of VBA programming ЁЯСЗ
All subjects of BCA ЁЯСЗ

Customizing Menus & Toolbars with VBA in Hindi

Buy all subjects pdf notes now [ examSpecial ]

Makhanlal Chaturvedi University / BCA / VBA programming

Customizing Menus and Toolbars with VBA in Hindi

Creating custom menus using VBA in Modifying Menus & Toolbars in Hindi

VBA (Visual Basic for Applications) рдХреА рдорджрдж рд╕реЗ рд╣рдо Excel рдпрд╛ Word рдЬреИрд╕реЗ Microsoft Office рдкреНрд░реЛрдЧреНрд░рд╛рдореНрд╕ рдореЗрдВ рдЕрдкрдиреЗ рдорди рдореБрддрд╛рдмрд┐рдХ menus рдФрд░ toolbars рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рд╕реЗ рд╣рдо рдЕрдкрдиреЗ daily tasks рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ access рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ productivity рдмрдврд╝рд╛ рд╕рдХрддреЗ рд╣реИрдВред custom menu рдмрдирд╛рдирд╛ рдорддрд▓рдм рдЕрдкрдиреА рдЬрд░реВрд░рдд рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдирдпрд╛ menu option рдЬреЛрдбрд╝рдирд╛ред рдпрд╣ process beginners рдХреЗ рд▓рд┐рдП рднреА рдЖрд╕рд╛рди рд╣реИред

  • рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, VBA Editor рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП Alt + F11 рджрдмрд╛рдПрдВред
  • Insert тЖТ Module рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред
  • рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ VBA code рд╡рд╣рд╛рдВ paste рдХрд░реЗрдВ:
Sub CreateCustomMenu()
  Dim cb As CommandBar
  Dim cbc As CommandBarControl

  ' рдкреБрд░рд╛рдирд╛ menu рд╣рдЯрд╛рдПрдВ рдпрджрд┐ рдореМрдЬреВрдж рд╣реЛ
  On Error Resume Next
  Application.CommandBars("Worksheet Menu Bar").Controls("My Menu").Delete
  On Error GoTo 0

  ' рдирдпрд╛ menu рдмрдирд╛рдПрдВ
  Set cb = Application.CommandBars("Worksheet Menu Bar")
  Set cbc = cb.Controls.Add(Type:=msoControlPopup, Temporary:=True)
  cbc.Caption = "My Menu"

  ' menu рдХреЗ рдЕрдВрджрд░ options рдЬреЛрдбрд╝рдирд╛
  With cbc.Controls.Add(Type:=msoControlButton)
    .Caption = "Option 1"
    .OnAction = "MyMacro1"
  End With
  With cbc.Controls.Add(Type:=msoControlButton)
    .Caption = "Option 2"
    .OnAction = "MyMacro2"
  End With
End Sub

рдЗрд╕ code рд╕реЗ рдПрдХ рдирдпрд╛ menu "My Menu" Excel рдХреА menu bar рдореЗрдВ рдЬреБрдбрд╝ рдЬрд╛рдПрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рджреЛ options рд╣реЛрдВрдЧреЗ тАУ Option 1 рдФрд░ Option 2ред рдЬрдм рдЖрдк рдЗрди рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВрдЧреЗ рддреЛ MyMacro1 рдФрд░ MyMacro2 рдирд╛рдо рдХреЗ macros run рд╣реЛрдВрдЧреЗред

Adding buttons to toolbars programmatically in Modifying Menus & Toolbars in Hindi

Menu рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЖрдк toolbar рдореЗрдВ рднреА buttons рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ user рдПрдХ click рдореЗрдВ macro run рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдпрд╣ рддрд░реАрдХрд╛ рдЕрдзрд┐рдХ convenient рд╣реЛрддрд╛ рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рдмрд╛рд░-рдмрд╛рд░ рдПрдХ рд╣реА task рдХрд░рдирд╛ рд╣реЛред

  • Toolbars рдореЗрдВ button рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо CommandBars рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
  • рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ code рдПрдХ рдирдпрд╛ toolbar рдмрдирд╛рддрд╛ рд╣реИ рдФрд░ рдЙрд╕ рдкрд░ buttons рдЬреЛрдбрд╝рддрд╛ рд╣реИ:
Sub AddToolbarButton()
  Dim myToolbar As CommandBar
  Dim myButton As CommandBarButton

  ' рдкреБрд░рд╛рдирд╛ toolbar delete рдХрд░реЗрдВ рдпрджрд┐ рдореМрдЬреВрдж рд╣реЛ
  On Error Resume Next
  Application.CommandBars("MyToolbar").Delete
  On Error GoTo 0

  ' рдирдпрд╛ toolbar рдмрдирд╛рдПрдВ
  Set myToolbar = Application.CommandBars.Add(Name:="MyToolbar", Position:=msoBarTop, Temporary:=True)

  ' рдкрд╣рд▓рд╛ button рдЬреЛрдбрд╝реЗрдВ
  Set myButton = myToolbar.Controls.Add(Type:=msoControlButton)
  With myButton
    .Caption = "Run Task"
    .Style = msoButtonIconAndCaption
    .OnAction = "MyMacro"
    .FaceId = 59
  End With

  myToolbar.Visible = True
End Sub

рдЗрд╕ code рд╕реЗ toolbar рдКрдкрд░ show рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХрд╛ рдирд╛рдо "MyToolbar" рд╣реЛрдЧрд╛ рдФрд░ рдЙрд╕рдореЗрдВ рдПрдХ button рд╣реЛрдЧрд╛ "Run Task" рдирд╛рдо рдХрд╛ред рдЙрд╕ рдкрд░ click рдХрд░рдиреЗ рд╕реЗ "MyMacro" рдирд╛рдо рдХрд╛ macro run рд╣реЛрдЧрд╛ред

Setting icons and captions for toolbar controls in Modifying Menus & Toolbars in Hindi

Toolbar рдХреЛ visually attractive рдФрд░ user-friendly рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдо рдЙрд╕рдХреЗ buttons рдкрд░ icon (image) рдФрд░ caption (text) рд╕реЗрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред FaceId рдПрдХ predefined icon рдХрд╛ code рд╣реЛрддрд╛ рд╣реИ рдЬреЛ Excel рдореЗрдВ already рдореМрдЬреВрдж рд╣реЛрддрд╛ рд╣реИред

  • Caption тАУ button рдкрд░ рдЬреЛ text рд▓рд┐рдЦрд╛ рд╣реЛрддрд╛ рд╣реИред
  • FaceId тАУ icon рдХреЛ represent рдХрд░рддрд╛ рд╣реИред рд╣рд░ icon рдХрд╛ рдПрдХ unique number рд╣реЛрддрд╛ рд╣реИред
  • Style тАУ рдпрд╣ рддрдп рдХрд░рддрд╛ рд╣реИ рдХрд┐ button рдкрд░ рд╕рд┐рд░реНрдл icon рджрд┐рдЦреЗрдЧрд╛, рд╕рд┐рд░реНрдл caption рдпрд╛ рджреЛрдиреЛрдВред

рдЙрджрд╛рд╣рд░рдг:

With myButton
  .Caption = "Save Data"
  .FaceId = 71 ' floppy disk icon
  .Style = msoButtonIconAndCaption
  .OnAction = "SaveDataMacro"
End With

рдЗрд╕ code рд╕реЗ button рдкрд░ floppy disk рд╡рд╛рд▓рд╛ icon рдФрд░ "Save Data" рд▓рд┐рдЦрд╛ рд╣реБрдЖ caption рджрд┐рдЦреЗрдЧрд╛ред рдЬрдм рдЗрд╕ рдкрд░ click рдХрд░реЗрдВрдЧреЗ рддреЛ SaveDataMacro macro run рд╣реЛрдЧрд╛ред

Resetting or restoring original menus and toolbars in Modifying Menus & Toolbars in Hindi

рдХрднреА-рдХрднреА рд╣рдореЗрдВ Excel рдХреА original toolbar рдпрд╛ menu bar рд╡рд╛рдкрд╕ рдЪрд╛рд╣рд┐рдП рд╣реЛрддреА рд╣реИ, рдЬреИрд╕реЗ рдЕрдЧрд░ custom menus рдареАрдХ рд╕реЗ рдХрд╛рдо рди рдХрд░ рд░рд╣реЗ рд╣реЛрдВред рдРрд╕реЗ рдореЗрдВ рд╣рдо VBA рд╕реЗ original settings restore рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ code Excel рдХреА default menus рдХреЛ restore рдХрд░рддрд╛ рд╣реИ:

Sub ResetMenuBar()
  ' Worksheet menu bar reset рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
  Application.CommandBars("Worksheet Menu Bar").Reset

  ' Standard рдФрд░ Formatting toolbar reset рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП
  Application.CommandBars("Standard").Reset
  Application.CommandBars("Formatting").Reset
End Sub

рдЗрд╕рд╕реЗ Excel рдХреА default рд╕реНрдерд┐рддрд┐ рдмрд╣рд╛рд▓ рд╣реЛ рдЬрд╛рдПрдЧреА рдФрд░ рдХреЛрдИ рднреА custom menu рдпрд╛ button рдЬреЛ рдЖрдкрдиреЗ рдЬреЛрдбрд╝реЗ рдереЗ, рд╡рд╣ рд╣рдЯ рдЬрд╛рдПрдВрдЧреЗред рдпрд╣ method helpful рд╣реЛрддрд╛ рд╣реИ рдЬрдм рдЖрдк рдЧрд▓рддреА рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ unwanted buttons рдпрд╛ menus рдмрдирд╛ рджреЗрдВред

рдорд╣рддреНрд╡рдкреВрд░реНрдг Tips beginners рдХреЗ рд▓рд┐рдП

  • CommandBars рдХреЗрд╡рд▓ Classic Office Interface рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВред Office Ribbon Interface (2007 рдФрд░ рдмрд╛рдж рдореЗрдВ) рдХреЗ рд▓рд┐рдП RibbonX рдФрд░ XML customizations рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИред
  • FaceId рдХреЗ рд▓рд┐рдП рдЖрдк FaceId Browser рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХреЛ рд╕рднреА icons рдХреЗ ID рдорд┐рд▓ рдЬрд╛рддреЗ рд╣реИрдВред
  • рд╣рд░ macro рдХрд╛ рдирд╛рдо рдФрд░ рдЙрд╕рдХреА functionality clear рд░рдЦреЗрдВ рддрд╛рдХрд┐ user рдХреЛ рдкрддрд╛ рд╣реЛ рд╡реЛ рдХреНрдпрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред
  • Temporary:=True рдХрд╛ рдорддрд▓рдм рд╣реИ рдЬрдм Excel рдмрдВрдж рд╣реЛрдЧрд╛ рддреЛ рдпрд╣ menu/button рднреА remove рд╣реЛ рдЬрд╛рдПрдВрдЧреЗред рдЕрдЧрд░ рдЖрдк permanent menu рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ add-in create рдХрд░реЗрдВред

Useful FaceId Examples

FaceId Icon Description
59 ЁЯЫая╕П General Settings Icon
71 ЁЯТ╛ Save Icon
19 ЁЯУК Chart Icon
293 ЁЯФН Search Icon

рдЗрд╕ рдкреВрд░реЗ process рд╕реЗ рдЖрдк Excel рдХреЛ рдЕрдкрдиреЗ рд╣рд┐рд╕рд╛рдм рд╕реЗ customize рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдмрд╛рд░-рдмрд╛рд░ рдПрдХ рд╣реА рддрд░рд╣ рдХреЗ macros рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд░рддреЗ рд╣реИрдВ рддреЛ custom menu рдФрд░ toolbar buttons рдмрдирд╛рдирд╛ рдЖрдкрдХреЗ workflow рдХреЛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред

FAQs

VBA customization Excel рдореЗрдВ Visual Basic for Applications рдХреЗ рдЬрд╝рд░рд┐рдП menus, toolbars рдФрд░ macros рдХреЛ рдЕрдкрдиреЗ рдЕрдиреБрд╕рд╛рд░ modify рдпрд╛ рдирдпрд╛ рдмрдирд╛рдирд╛ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдХрд╛рдо рддреЗрдЬрд╝ рдФрд░ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред
VBA editor рдореЗрдВ CommandBars рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЖрдк рдЕрдкрдиреА рдЬрд░реВрд░рдд рдХреЗ рд╣рд┐рд╕рд╛рдм рд╕реЗ рдирдпрд╛ menu рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ CommandBars("Worksheet Menu Bar").Controls.Add рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрддрд╛ рд╣реИред
рд╣рд╛рдБ, VBA рдХреЗ CommandBars рдСрдмреНрдЬреЗрдХреНрдЯ рд╕реЗ рдЖрдк рдирдП toolbar рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЙрд╕рдореЗрдВ buttons add рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рдиреНрд╣реЗрдВ macros рд╕реЗ рд▓рд┐рдВрдХ рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
Toolbar buttons рдореЗрдВ FaceId рд╕реЗ predefined icons рдФрд░ Caption property рд╕реЗ text set рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред Style property рд╕реЗ icon, caption рдпрд╛ рджреЛрдиреЛрдВ рджрд┐рдЦрд╛ рд╕рдХрддреЗ рд╣реИрдВред
Application.CommandBars("Worksheet Menu Bar").Reset рдХрдорд╛рдВрдб рд╕реЗ рдЖрдк original menus рдФрд░ toolbars рд╡рд╛рдкрд╕ рд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ custom menus рд╣рдЯ рдЬрд╛рддреЗ рд╣реИрдВред
рдирд╣реАрдВ, рдЕрдЧрд░ рдЖрдк Temporary:=True рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рддреЛ customization рдХреЗрд╡рд▓ рдЙрд╕ session рдХреЗ рд▓рд┐рдП рд░рд╣рддреА рд╣реИред permanent customization рдХреЗ рд▓рд┐рдП add-ins рдмрдирд╛рдирд╛ рд╣реЛрддрд╛ рд╣реИред

Please Give Us Feedback