Is there anything wrong with creating a macro icon for each function and assigning it a keyboard shortcut? If so, you will have to use the Windows API to check the keyboard status. If you google getkeystate lib user32 vba, you will get more than enough assistance.
Paste these lines at the top of your code (outside of any sub or function):
Public Const SHIFT_KEY = &H10 'Shift
#If VBA7 Then
Declare PtrSafe Function GetKeyState Lib "USER32" (ByVal vKey As Long) As Integer
Declare Function GetKeyState Lib "USER32" (ByVal vKey As Long) As Integer
Then in your Sub Main, use this line:
If GetKeyState(SHIFT_KEY) < 0 Then
'Shift key is down
Thanks! That worked.
Tasks are so similar with a slight difference that I wanted to keep them in the same button.
I had came across that function, but syntax looked odd/different, so I assumed if was for some other language. I should have actually tried it.