Geek Documentation Logo

Burger Button Popup Menu

Version 1


Introduction

  • Price : £2.99
  • Purchase : Burger Button Popup Menu
  • Software Name : Burger Button Popup Menu · Burger Buttons with Animations that Trigger a CommandBarPopup Menu to run a Macro for Excel
  • Software Version : v 1
  • Website : airportal.sellfy.store/

If you have already purchased this Software, let me take a moment to thank you for being a loyal customer
You are entitled to free lifetime updates for ALL future builds

This documentation is to help you understand the Software and to give you a more meaningful insight into what it can do. Please go through the documentation and read it carefully · Basic VBA skills will be required

Requirements

You will need the following Excel Version & Prerequisite to use this Software

  1. Excel 2010, 2013 & 2016 (32bit or 64bit)
  2. Basic VBA skills
  3. Windows PC · NOT a Mac!

No support is provided for customization or development of this Software






About Burger Button Popup Menu #back to top

Burger Buttons are small animated Buttons made up of 2 Shapes that are Grouped together. One of the Shapes is the Icon or Image and the other is the circle Shape which will be animated. When a Burger Button is clicked the animated circle will be displayed and a Commandbar Popup Menu will 'popup' next to the animation. All this is linked to a beautifully simple Frame Timer for the animations. You can chose from 3 different animations, adjust the animation speed and the Colour of the animated circle. You can edit 3 different types of Popup Menu, classic list, sectioned Menu and a Menu using a Sub-menu. If you want a ToolTip to be displayed when hovering over the Button, there is an example of how to do this in the download

Burger Button Popup Menu Image

Features include:

  • * Aesthetically pleasing with a lovely smooth animation upon a Mouse Click
  • * Pick from 3 different Button animations, Pulse, FadeIn and Heartbeat
  • * Pick from 3 different Popup Menu Types, List, Sectioned & Sub-menu
  • * Change the animation speed and Colour
  • * Use a normal Hyperlink ToolTip as well as running a Macro from the Button





The Download File #back to top

The download File

Open the BurgerButtonPopupMenu.xlsm File. A License Worksheet is included in the Workbook. Select the "Burger Button Popup Menu" Worksheet. Here you will find all of the examples. Test the examples to see all of the Button animations and the use of the different Popup Menus. Press ALT+F11 to enter the VBA Editor. Scroll down and view the Code used for the Burger Buttons. Before continuing, it is advised to take a Backup as you will no doubt want to Copy buttons and Code from this Workbook

Burger Button Popup Menu Code #back to top

Here is the Code to run a Burger Button Popup Menu that has a classic list of Menu Items. It uses the Animate() Subroutine which takes 4 Parameters, ShapeItem, Animation, Speed and Colour. It also uses the Popup() Subroutine to determine the type of Commandbar Popup Menu to display - add your own Code to the part '' your Code...':

' BurgerButtonExample1
Public Sub BurgerButtonExample1()

    ' prevent multiple clicks
    If IsRunning Then Exit Sub

    ' Animate takes 4 parameters
    ' - the name of the Shape object to animate (required)
    ' - the animation type, Pulse, FadeIn or Heartbeat
    ' - the speed & the Shape colour (all optional)
    Animate ActiveSheet.Shapes("burger_animation"), Pulse

    ' display the Popup List Style Menu
    Popup List

    ' your Code...

    ' reset
    IsRunning = False

End Sub
                            

You can also use the Paramer Names for the Animate() Subroutine like this:

    Animate ShapeItem:=ActiveSheet.Shapes("ellipse_purple_animation"), _
            Animation:=Pulse, _
            Speed:=0.05, _
            Colour:=RGB(229, 223, 255)
                            

Linking a Macro to a Button #back to top

Linking a Macro or VBA Subroutine to a Burger Button is easy. You will need to Unprotect the Worksheet first as the Workbook uses Protection to preven any right-clicks on the Buttons, while still allowing users to edit the Cells and run Code - do this on the Changes Group of the REVIEW Tab on the Ribbon. Now, hover near the Button (the Grouped Shape) and then right-click->Assign Macro... Pick your Macro to link to the Burger Button

Burger Button Link Macro Image

Available Animations #back to top

The following animations are available, Pulse, FadeIn and Heartbeat. Pulse renders the circle as dark as the Shape Colour and then does a lovely Fade out. FadeIn fades the circle from light to dark - this will form the basis of my next Project, Burger Buttons with Popup Menu's. Hearbeat is like the rythmic beating of your heart, well for a second or two anyhow! All of the animations use my Frame Timer routine to ensure a smooth transition

Here is the Code for each animation - the AnimationType is an Enum of the 3 Values, Pulse, FadeIn & Heartbeat which can be accessed via the Intellisense when editing the Code:

    Animate ActiveSheet.Shapes("burger_animation"), Pulse

    Animate ActiveSheet.Shapes("burger_animation"), FadeIn

    Animate ActiveSheet.Shapes("burger_animation"), Heartbeat
                            

Available Menus #back to top

The following Popup Menu types are available, List, Section and SubMenu. List is a classic list of Commandbar Controls or Menu Items, Section is the same list but with small divider lines so that parts of your Menu can be 'sectioned off' and lastly SubMenu which allows you to build up one or more levels of Menu Items. All of the 3 Menu types can be edited in the Code and adjusted to suit your requirements

Here is the Code for each Popup Menu type - the PopUpMenuType is an Enum of the 3 Values, List, Section & SubMenu which can be accessed via the Intellisense when editing the Code:

    Popup List

    Popup Section

    Popup SubMenu
                            

Adjusting the Speed & Colour #back to top

You can adjust the speed and Colour of the animation via the Animate() Subroutine

Here is the Code to speed up the animation - the default value for the speed Parameter is '0.05'. Test values like '0.08' and '0.1':

    Animate ActiveSheet.Shapes("google_animation"), Pulse, 0.08
                            

The Colour is the Colour of the animation Shape and the Parameter will take a Long value like '16777215', a VBA Colour Code like 'vbGreen' or an RGB Colour Code like 'RGB(229, 223, 255)'

Here is the Code to adjust the Colour

    Animate ActiveSheet.Shapes("ellipse_purple_animation"), Pulse, , RGB(229, 223, 255)
                            

Adjusting the Popup Menus #back to top

You can adjust any of the 3 different Popup Menus by going into the Code and editing them 'in situ'

Here is a part of the Code that you can edit:

Private Sub PopupList()

    ' vars
    Const POPUP_MENU As String = "PopUpMenu"
    Dim objMenu As CommandBar

    On Error Resume Next
    ' delete old bar if it exists
    Application.CommandBars(POPUP_MENU).Delete
    Set objMenu = CommandBars.Add(Position:=msoBarPopup, Temporary:=True)

    With objMenu.Controls.Add(Type:=msoControlButton)
        .Caption = "Save Data"
        .FaceId = 3
        .OnAction = "'" & ThisWorkbook.Name & "'!" & "ExamplePopupListCallback_SaveData"
    End With

    With objMenu.Controls.Add(Type:=msoControlButton)
        .Caption = "Reset All"
        .FaceId = 37
        .OnAction = "'" & ThisWorkbook.Name & "'!" & "ExamplePopupListCallback_ResetAll"
    End With

    rest of the Code is omitted...
                            

You don't have to use a Faceid number for the '.Faceid' part - you can use the Text or Name of the Control like this example piece of Code that adds the 'Copy' Faceid to the Control:

        .FaceId = CommandBars("Standard").Controls("Copy").ID
                            

The OnAction part of the Code is used to provide the name of the Callback Subroutine to receive focus following a Mouse click. You can use single Subrooutines or pass in a Parameter for multiple Callbacks into a single Subroutine like this:

    With objMenu.Controls.Add(Type:=msoControlButton)
        .Caption = "Display Help"
        .FaceId = 49
        .OnAction = "'" & ThisWorkbook.Name & "'!" & "'ExamplePopupListCallback_Passing_Parameters ""Display Help"" '"
    End With

    With objMenu.Controls.Add(Type:=msoControlButton)
        .Caption = "Refresh Worksheet"
        .FaceId = 459
        .OnAction = "'" & ThisWorkbook.Name & "'!" & "'ExamplePopupListCallback_Passing_Parameters ""Refresh Worksheet"" '"
    End With
                            

The Grouped Shapes #back to top

All Burger Buttons consist of 2 Shapes that have been Grouped together to make 1 Button. To view the Shapes you should use the Selection Pane on the Arrange Group of the PAGE LAYOUT Tab on the Ribbon. Select a Button by right-click. Now go and open the Selection Pane - you will see all of the Burger Buttons and their respective grouped Shapes. You will also note, that they all have unique names:

Selection Pane Image

The Group Shape #back to top

The Grouped Shape is the Button made up of 2 Shapes. It is also where you should link your Macro ie. right-click->Assign Macro... To select the Grouped Shape simply use right-click

The Grouped Shape or Button Image

The Button Shape #back to top

The Button Shape is a single Shape that has been Grouped with the Animation Shape. It is where you should add your Icon, Picture or Image that you want to use for the Button Face. To select the Button Shape simply use the Selection Pane on the Arrange Group of the PAGE LAYOUT Tab on the Ribbon. Select a Button by right-click. Now go and open the Selection Pane. Now click on the Shape underneath the Burger Button name that ends in '_button' - that's your Button. Right-click on your Button now that it is selected and choose Format Picture to bring up the Format Picture Pane. Click on the Paint Pot and then expand Fill. Change your Image by selecting File...

The Button Shape

The Animation Shape #back to top

The Circle or Animation Shape is a single Shape that has been Grouped with the Button Shape. It is also where you can style the circle if you wish. To select the Animation Shape simply use the Selection Pane on the Arrange Group of the PAGE LAYOUT Tab on the Ribbon. Select a Button by right-click. Now go and open the Selection Pane. Now click on the Shape underneath the Burger Button name that ends in '_animation' - that's your Animation Shape

The Animation Shape

Adding a Button to a Project #back to top

Before you add the Button, you need to add some Code into your Project or newly Saved Workbook. Copy all of the Code in the 'mdBurgerButtons' Code Module into your own Code Module. You can also drag the Code Module into your own Project using the Project Explorer Window if you prefer. You will be able to delete any Code that is not required later


' Software Name:
' Burger Button Popup Menu - Burger Buttons with Animations that Trigger a CommandBarPopup Menu to run a Macro for Excel by Mark Kubiszyn
'
' © Copyright/Author:
' Mark Kubiszyn 2012-2018. All Rights Reserved
' Website/Follow:
' https://www.kubiszyn.co.uk/
' https://www.facebook.com/Kubiszyn.co.uk/
'
' License:
' This Software is released under an MIT License (MIT)
' https://www.kubiszyn.co.uk/license.html
'
' Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files
' (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge,
' publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
' subject to the following conditions:
'
' THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
' MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
' ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
' SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
'
' Changelog:
' 20.10.2018 (Version 1) released

' force explicit variable declaration
Option Explicit

' global animation type
Public Enum AnimationType
    [_First]
    Pulse = 1
    FadeIn = 2
    Heartbeat = 3
    [_Last]
End Enum

' global popups type
Public Enum PopUpMenuType
    [_First]
    List = 1
    Section = 2
    SubMenu = 3
    [_Last]
End Enum

' used to prevent repeated animation & Macro's from being triggered by multiple clicking
Private IsRunning As Boolean

...rest of the Code is omitted...
                           

Now to add a Burger Button to your own Project or Workbook, select a Button in the BurgerButtonPopupMenu.xlsm File by right-click and Copy the Button to the Clipboard. Paste the Button into your own Project or a new Workbook that has been Saved. Right-click the Button that you just Pasted in and choose Assign Macro... Pick the Macro that corresponds to the Example Button (you can amend later). Edit the respective Popup Menu if you wish and then press the Button to see the Burger Button in action

Adding a Hyperlink ToolTip #back to top

Before you add the Hyperlink ToolTip Button, you need to add some Code into your Project or newly Saved Workbook. Copy all of the Code in the 'mdBurgerButtons' Code Module into your own Code Module. You can also drag the Code Module into your own Project using the Project Explorer Window if you prefer. You will be able to delete any Code that is not required later


' Software Name:
' Burger Button Popup Menu - Burger Buttons with Animations that Trigger a CommandBarPopup Menu to run a Macro for Excel by Mark Kubiszyn
'
' © Copyright/Author:
' Mark Kubiszyn 2012-2018. All Rights Reserved
' Website/Follow:
' https://www.kubiszyn.co.uk/
' https://www.facebook.com/Kubiszyn.co.uk/
'
' License:
' This Software is released under an MIT License (MIT)
' https://www.kubiszyn.co.uk/license.html
'
' Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files
' (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge,
' publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,
' subject to the following conditions:
'
' THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
' MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR
' ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
' SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE
'
' Changelog:
' 20.10.2018 (Version 1) released

' force explicit variable declaration
Option Explicit

' global animation type
Public Enum AnimationType
    [_First]
    Pulse = 1
    FadeIn = 2
    Heartbeat = 3
    [_Last]
End Enum

' global popups type
Public Enum PopUpMenuType
    [_First]
    List = 1
    Section = 2
    SubMenu = 3
    [_Last]
End Enum

' used to prevent repeated animation & Macro's from being triggered by multiple clicking
Private IsRunning As Boolean

...rest of the Code is omitted...
                           

Now to add a Burger Button to your own Project or Workbook, select the 'Burger5' Hyperlink Button in the BurgerButtonPopupMenu.xlsm File by right-click and Copy the Button to the Clipboard. Paste the Button into your own Project or a new Workbook that has been Saved. Then you need to add the extra Code to support the Commandbar_OnUpdate() Subroutine that captures a Mouse Click on a Shape and allows you to then run Code whilst letting you use a Hyperlink as a ToolTip

Go into the "ThisWorkbook" Code Module and Copy this Code and Paste it into the "ThisWorkbook" Code Module for the Workbook where you Copied the Hyperlink Button earlier. That's it, close and reopen the File. Test the Button

Limitations #back to top

There is no possibility of changing the Burger Icon Colour in this Version. I may consider this in any future builds. Extra Code is required in the "ThisWorkbook" Code Module in order to use a ToolTip using the Commandbar_OnUpdate() Subroutine

Screen Shots #back to top

Burger Buttons Workbook

This is a Screen Shot of the Burger Button Popup Menu Workbook with examples available for Purchase

Burger Button Popup Menu Image 1000px x 654px

Burger Buttons

This is a Screen Shot of the individual Burger Buttons with one Popup Menu being displayed

Burger Button Popup Menu Image









Videos #back to top

Video of the Burger Button Popup Menus in action

Here, I run through the examples for the Burger Button Popup Menus including the Hyperlink ToolTip popup Menu. 3 animation and Popup Menu types are shown in this video






Can I use a ToolTip with a Button?

Yes the Code has been added to do this in the "ThisWorkbook" Code Module. The routine uses the Commandbar_OnUpdate() Subroutine






Support #back to top

Please remember you have purchased very affordable Software and you have not paid for a full-time Software design agency - I am but one man. Occasionally I may help with small tweaks, but these requests will be put on a much lower priority due to their nature. You have not PAID for Support, Support is 100% optional and I provide it for your convenience, so please be patient, polite and respectful

Support (limited) for my Software includes:

* Responding to questions or problems regarding the Software and its features
* Fixing valid (replicated) bugs and reported issues for the VERSION I HAVE WRITTEN

Software support does not include:

* Customization and installation services
* Support for third party software or ANY kind of development whatsoever

Before seeking support, please...

* Make sure your question is a valid Software Issue and not a customization request
* Make sure you have read through the documentation and any related video guides before asking support on how to accomplish a task
* Make sure to double check the Software FAQs or online documentation
* Ensure that you access to the VBOM is allowed and that Macros can run in Excel
* Make sure to provide 'proof of purchase' and state the name / version of the Software that you are having issues with when requesting support by Email or via Facebook

How to get Support

Contact Mark Kubiszyn on the Email address provided when you purchased the Software, including the Order Number
Contact Kubiszyn.co.uk via our Facebook Page - remember to be patient, if there has been an issue with your download, I will always respond within 48 hours and will Email you the File directly if neccessary or via Messanger. For other issues the response time may be considerably longer and I may choose to respond to specific questions only (as is my right), depending on what has been asked

Version History (Changelog) #back to top

You can find the version history in the Code Module for any Macro-enabled Software or read more information below. The latest Version is always shown first


Changelog

20.10.2018 (Version 1) released