Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
activeSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
activeSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans ton
cas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
activeSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans ton
cas)
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:2jpQc.10421$qn2.1619@nntpserver.swip.net...
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans ton
cas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule est
activeSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans ton
cas)
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans ton
cas)
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans ton
cas)
J'ai tout installé dans un module mais il aime pas et me fait une erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans
ton
cas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule
est
activeSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
J'ai tout installé dans un module mais il aime pas et me fait une erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:OJd83SueEHA.704@TK2MSFTNGP09.phx.gbl...
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans
ton
cas)
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:2jpQc.10421$qn2.1619@nntpserver.swip.net...
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule
est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
J'ai tout installé dans un module mais il aime pas et me fait une erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans
ton
cas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule
est
activeSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans un
module *sans rien au-dessus*, sinon tu auras effectivement un plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel 2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes intempestifs (à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code bien
placé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une erreur
surl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans
toncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message
de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
AsInteger
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule
estactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans un
module *sans rien au-dessus*, sinon tu auras effectivement un plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel 2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes intempestifs (à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code bien
placé si tu veux.
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:73xQc.10510$qn2.1727@nntpserver.swip.net...
J'ai tout installé dans un module mais il aime pas et me fait une erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:OJd83SueEHA.704@TK2MSFTNGP09.phx.gbl...
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans
ton
cas)
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:2jpQc.10421$qn2.1619@nntpserver.swip.net...
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message
de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule
est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans un
module *sans rien au-dessus*, sinon tu auras effectivement un plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel 2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes intempestifs (à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code bien
placé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une erreur
surl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ (dans
toncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message
de
news:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
AsInteger
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche majuscule
estactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
merci beaucoup
Cordialement
Jacky
"Papou" a écrit dans le message de
news:Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans un
module *sans rien au-dessus*, sinon tu auras effectivement un plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes intempestifs
(à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bien
placé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une
erreur
surl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(dans
toncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
denews:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)
AsInteger
Private Declare Function GetKeyboardState Lib "user32" (kbArray
As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray
As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche
majuscule
estactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
jbriznospam@tele2.fr
merci beaucoup
Cordialement
Jacky
"Papou" <pasquestion@nonmais> a écrit dans le message de
news:uZ0tvJ9eEHA.632@TK2MSFTNGP12.phx.gbl...
Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans un
module *sans rien au-dessus*, sinon tu auras effectivement un plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes intempestifs
(à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bien
placé si tu veux.
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:73xQc.10510$qn2.1727@nntpserver.swip.net...
J'ai tout installé dans un module mais il aime pas et me fait une
erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:OJd83SueEHA.704@TK2MSFTNGP09.phx.gbl...
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(dans
ton
cas)
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:2jpQc.10421$qn2.1619@nntpserver.swip.net...
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32" (kbArray
As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray
As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche
majuscule
est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
merci beaucoup
Cordialement
Jacky
"Papou" a écrit dans le message de
news:Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans un
module *sans rien au-dessus*, sinon tu auras effectivement un plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes intempestifs
(à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bien
placé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une
erreur
surl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(dans
toncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
denews:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)
AsInteger
Private Declare Function GetKeyboardState Lib "user32" (kbArray
As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32" (kbArray
As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche
majuscule
estactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
C'est parti dans ta bal
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:gDsRc.15057$J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
merci beaucoup
Cordialement
Jacky
"Papou" a écrit dans le message de
news:Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans
un
module *sans rien au-dessus*, sinon tu auras effectivement un
plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes
intempestifs
(àmon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bienplacé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une
erreursurl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message
de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(danstoncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
messagedenews:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)AsInteger
Private Declare Function GetKeyboardState Lib "user32"
(kbArray
AsKeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32"
(kbArray
AsKeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche
majusculeestactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
C'est parti dans ta bal
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:gDsRc.15057$qn2.1956@nntpserver.swip.net...
J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
jbriznospam@tele2.fr
merci beaucoup
Cordialement
Jacky
"Papou" <pasquestion@nonmais> a écrit dans le message de
news:uZ0tvJ9eEHA.632@TK2MSFTNGP12.phx.gbl...
Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans
un
module *sans rien au-dessus*, sinon tu auras effectivement un
plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes
intempestifs
(à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bien
placé si tu veux.
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:73xQc.10510$qn2.1727@nntpserver.swip.net...
J'ai tout installé dans un module mais il aime pas et me fait une
erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message
de
news:OJd83SueEHA.704@TK2MSFTNGP09.phx.gbl...
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(dans
ton
cas)
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:2jpQc.10421$qn2.1619@nntpserver.swip.net...
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32"
(kbArray
As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32"
(kbArray
As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche
majuscule
est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
C'est parti dans ta bal
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:gDsRc.15057$J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
merci beaucoup
Cordialement
Jacky
"Papou" a écrit dans le message de
news:Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre dans
un
module *sans rien au-dessus*, sinon tu auras effectivement un
plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes
intempestifs
(àmon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long) As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bienplacé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une
erreursurl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message
de
news:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(danstoncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
messagedenews:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)AsInteger
Private Declare Function GetKeyboardState Lib "user32"
(kbArray
AsKeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32"
(kbArray
AsKeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche
majusculeestactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
Merci pour le fichier.
Je viens d'essayer et j'ai le meme defaut
au lancement du fichier j'ai dans une boite
Erreur de compilation
Attendu : fin d'instruction
les 3 lignes Private sont en rouge et kbByte est surligné
Merci pour ton aide
"papou" <cestpasbonprobin@çanonpluscg44_fr> a écrit dans le message de
news:Bonjour
C'est parti dans ta bal
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:gDsRc.15057$J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
merci beaucoup
Cordialement
Jacky
"Papou" a écrit dans le message de
news:Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre
dans
unmodule *sans rien au-dessus*, sinon tu auras effectivement un
plantage.Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes
intempestifs(àmon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bienplacé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une
erreursurl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
denews:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(danstoncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
messagedenews:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)AsInteger
Private Declare Function GetKeyboardState Lib "user32"
(kbArrayAsKeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32"
(kbArrayAsKeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche
majusculeestactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
Merci pour le fichier.
Je viens d'essayer et j'ai le meme defaut
au lancement du fichier j'ai dans une boite
Erreur de compilation
Attendu : fin d'instruction
les 3 lignes Private sont en rouge et kbByte est surligné
Merci pour ton aide
"papou" <cestpasbonprobin@çanonpluscg44_fr> a écrit dans le message de
news:uJXxumdfEHA.3536@TK2MSFTNGP12.phx.gbl...
Bonjour
C'est parti dans ta bal
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:gDsRc.15057$qn2.1956@nntpserver.swip.net...
J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
jbriznospam@tele2.fr
merci beaucoup
Cordialement
Jacky
"Papou" <pasquestion@nonmais> a écrit dans le message de
news:uZ0tvJ9eEHA.632@TK2MSFTNGP12.phx.gbl...
Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre
dans
un
module *sans rien au-dessus*, sinon tu auras effectivement un
plantage.
Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003
WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes
intempestifs
(à
mon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bien
placé si tu veux.
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:73xQc.10510$qn2.1727@nntpserver.swip.net...
J'ai tout installé dans un module mais il aime pas et me fait une
erreur
sur
l'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
de
news:OJd83SueEHA.704@TK2MSFTNGP09.phx.gbl...
Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(dans
ton
cas)
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:2jpQc.10421$qn2.1619@nntpserver.swip.net...
Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
de
news:eHlsJJueEHA.1424@tk2msftngp13.phx.gbl...
Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)
As
Integer
Private Declare Function GetKeyboardState Lib "user32"
(kbArray
As
KeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32"
(kbArray
As
KeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" <jyz@free.fr> a écrit dans le message de
news:ItoQc.10401$qn2.1566@nntpserver.swip.net...
Bjr,
Je cherche a faire une macro qui detecte si la touche
majuscule
est
active
Si active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci
Bonjour
Merci pour le fichier.
Je viens d'essayer et j'ai le meme defaut
au lancement du fichier j'ai dans une boite
Erreur de compilation
Attendu : fin d'instruction
les 3 lignes Private sont en rouge et kbByte est surligné
Merci pour ton aide
"papou" <cestpasbonprobin@çanonpluscg44_fr> a écrit dans le message de
news:Bonjour
C'est parti dans ta bal
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:gDsRc.15057$J'ai beau essayé je n'arrive pas.
Je veux bien recevoir un classeur
Mon adresse est : (enlever nospam)
merci beaucoup
Cordialement
Jacky
"Papou" a écrit dans le message de
news:Re
Tout ce que je t'ai envoyé doit être placé tel quel dans l'ordre
dans
unmodule *sans rien au-dessus*, sinon tu auras effectivement un
plantage.Je l'ai testé personnellement au boulot et ça fonctionne bien (Excel
2003WinXP Pro)
Il faut également (et surtout) veiller aux sauts de lignes
intempestifs(àmon avis c'est plus certainement ton problème)
Donc pour y voir plus clair :
'Ligne 1
Const VK_CAPITAL = &H14
'Ligne 2
Private Type KeyboardBytes
'Ligne 3
kbByte(0 To 255) As Byte
'Ligne 4
End Type
'Ligne 5
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As Long)
As
Integer
'Ligne 6
Private Declare Function GetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 7
Private Declare Function SetKeyboardState Lib "user32" (kbArray As
KeyboardBytes) As Long
'Ligne 8
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
'Ligne 9
Sub DesactiveMAJ()
'Ligne 10
GetKeyboardState KbOld
'Ligne 11
TurnOff VK_CAPITAL
'Ligne 12
End Sub
'Ligne 13
Sub ActiveMAJ()
'Ligne 14
GetKeyboardState KbOld
'Ligne 15
TurnOn VK_CAPITAL
'Ligne 16
End Sub
'Ligne 17
Private Sub TurnOff(vkKey As Long)
'Ligne 18
GetKeyboardState kbArray
'Ligne 19
kbArray.kbByte(vkKey) = 0
'Ligne 20
SetKeyboardState kbArray
'Ligne 21
End Sub
'Ligne 22
Private Sub TurnOn(vkKey As Long)
'Ligne 23
GetKeyboardState kbArray
'Ligne 24
kbArray.kbByte(vkKey) = 1
'Ligne 25
SetKeyboardState kbArray
'Ligne 26
End Sub
Ouf :-))
PS si ça ne marche toujours pas je t'envoie un classeur avec le code
bienplacé si tu veux.
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:73xQc.10510$J'ai tout installé dans un module mais il aime pas et me fait une
erreursurl'instructon Private .... kbBytes (0 to 255)
Les 3 Private sont en rouge !!!
Je suis sous 2003 ??
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
message
denews:Oups là ! pas de panique > les API rendent heureux ;-)
Copier et coller dans un module et tester la macro DesactiveMAJ
(danstoncas)
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:2jpQc.10421$Ouh la !!!
J'installe cela comment
API pas connaître .....
Merci quand meme
"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le
messagedenews:Bonjour
Avec des fonctions API c'est possible apparamment :
Const VK_CAPITAL = &H14
Private Type KeyboardBytes
kbByte(0 To 255) As Byte
End Type
Declare Function GetKeyState Lib "user32" (ByVal nVirtKey As
Long)AsInteger
Private Declare Function GetKeyboardState Lib "user32"
(kbArrayAsKeyboardBytes) As Long
Private Declare Function SetKeyboardState Lib "user32"
(kbArrayAsKeyboardBytes) As Long
Dim kbArray As KeyboardBytes, KbOld As KeyboardBytes
Sub DesactiveMAJ()
GetKeyboardState KbOld
TurnOff VK_CAPITAL
End Sub
Sub ActiveMAJ()
GetKeyboardState KbOld
TurnOn VK_CAPITAL
End Sub
Private Sub TurnOff(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 0
SetKeyboardState kbArray
End Sub
Private Sub TurnOn(vkKey As Long)
GetKeyboardState kbArray
kbArray.kbByte(vkKey) = 1
SetKeyboardState kbArray
End Sub
Cordialement
Pascal
"JYZ" a écrit dans le message de
news:ItoQc.10401$Bjr,
Je cherche a faire une macro qui detecte si la touche
majusculeestactiveSi active la mettre inactif
Si inactive rien
Est ce possible ?
Je ne vois pas comment
Merci