Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I wonder if anyone can help me with this:
I have written a macro that the user can invoke using a keyboard shortcut. The issue is that I would like the macro to do something different depending on whether the user presses "l" or Shift-"l" (i.e. "L"). Of course, if the Caps Lock key is on, and the user does not notice, the actions will be reversed. I'd like to be able, in the macro, to test whether Caps Lock is set on. Any thoughts? Sorry if this is a total "duh" question. |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Franco,
Try something like Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer Sub AAA() Dim Res As Boolean Res = GetKeyState(vbKeyCapital) And 1 Debug.Print Res 'True is CAPS LOCK, False is not End Sub -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com "Franco Turrinelli" wrote in message ... I wonder if anyone can help me with this: I have written a macro that the user can invoke using a keyboard shortcut. The issue is that I would like the macro to do something different depending on whether the user presses "l" or Shift-"l" (i.e. "L"). Of course, if the Caps Lock key is on, and the user does not notice, the actions will be reversed. I'd like to be able, in the macro, to test whether Caps Lock is set on. Any thoughts? Sorry if this is a total "duh" question. |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
For the shift key you van use this
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer Public Const VK_SHIFT As Integer = &H10 'Shift Sub test() If GetKeyState(VK_SHIFT) < 0 Then MsgBox "You used the Shift key" Else MsgBox "You not used the shift key" End If End Sub -- Regards Ron de Bruin (Win XP Pro SP-1 XL2000-2003) www.rondebruin.nl "Chip Pearson" wrote in message ... Franco, Try something like Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer Sub AAA() Dim Res As Boolean Res = GetKeyState(vbKeyCapital) And 1 Debug.Print Res 'True is CAPS LOCK, False is not End Sub -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com "Franco Turrinelli" wrote in message ... I wonder if anyone can help me with this: I have written a macro that the user can invoke using a keyboard shortcut. The issue is that I would like the macro to do something different depending on whether the user presses "l" or Shift-"l" (i.e. "L"). Of course, if the Caps Lock key is on, and the user does not notice, the actions will be reversed. I'd like to be able, in the macro, to test whether Caps Lock is set on. Any thoughts? Sorry if this is a total "duh" question. |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Thank you both, it works. Now I'll try to understand
exactly why and how . . . ;-) -----Original Message----- For the shift key you van use this Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer Public Const VK_SHIFT As Integer = &H10 'Shift Sub test() If GetKeyState(VK_SHIFT) < 0 Then MsgBox "You used the Shift key" Else MsgBox "You not used the shift key" End If End Sub -- Regards Ron de Bruin (Win XP Pro SP-1 XL2000-2003) www.rondebruin.nl "Chip Pearson" wrote in message ... Franco, Try something like Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As Integer Sub AAA() Dim Res As Boolean Res = GetKeyState(vbKeyCapital) And 1 Debug.Print Res 'True is CAPS LOCK, False is not End Sub -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com "Franco Turrinelli" wrote in message ... I wonder if anyone can help me with this: I have written a macro that the user can invoke using a keyboard shortcut. The issue is that I would like the macro to do something different depending on whether the user presses "l" or Shift-"l" (i.e. "L"). Of course, if the Caps Lock key is on, and the user does not notice, the actions will be reversed. I'd like to be able, in the macro, to test whether Caps Lock is set on. Any thoughts? Sorry if this is a total "duh" question. . |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
How to lock the Ctrl key? (as locking the Shift key w/Caps Lock) | Excel Discussion (Misc queries) | |||
auto caps lock | Excel Discussion (Misc queries) | |||
is it possible to disable the CAPS LOCK key ? | Excel Discussion (Misc queries) | |||
Caps Lock | Excel Programming | |||
Caps lock | Excel Programming |