Excel Downloads
Forum

Précédent   Excel Downloads Forums > Excel > Forum Excel


Réponse
 
LinkBack Outils de la discussion
Vieux 23/08/2005, 10h08   #1 (permalink)
XLDnaute Occasionel
 
Date d'inscription: août 2005
Messages: 159
Par défaut Verrouillage majuscule

Bonjour,

Y a t'il moyen en VBA (dans le code de la feuille), d'activer la touche de verrouillage majuscule ?

Merci par avance.
guenfood est déconnecté   Réponse avec citation
ANNONCES
Vieux 23/08/2005, 11h06   #2 (permalink)
Ti_
XLDnaute Impliqué
 
Avatar de Ti_
 
Date d'inscription: février 2005
Version Excel : Excel 2003 (PC)
Messages: 746
Par défaut Re:Verrouillage majuscule

oui, avec une API. Utilise le code suivant :

Private Declare Sub keybd_event Lib 'user32.dll' (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)

Property Let VerrouillageMaj(ByVal OnOff As Boolean)
'Ti
keybd_event IIf(OnOff, vbKeyCapital, vbKeyShift), 0, 0, 0
keybd_event IIf(OnOff, vbKeyCapital, vbKeyShift), 0, &H2, 0
End Property

Sub test()
VerrouillageMaj = True
End Sub
__________________
Veriti
Ti_ est déconnecté   Réponse avec citation
Vieux 23/08/2005, 11h13   #3 (permalink)
XLDnaute Occasionel
 
Date d'inscription: août 2005
Messages: 159
Par défaut Re:Verrouillage majuscule

Merci pour ta réponse.

Mais je n'arrive pas à appliquer ceci à ma feuille.
Je vais sur 'visualiser code' de ma feuille, mais si je rentre ce code, cela ne marche pas.
Où dois-je le mettre ?
:huh:
guenfood est déconnecté   Réponse avec citation
Vieux 23/08/2005, 12h01   #4 (permalink)
Ti_
XLDnaute Impliqué
 
Avatar de Ti_
 
Date d'inscription: février 2005
Version Excel : Excel 2003 (PC)
Messages: 746
Par défaut Re:Verrouillage majuscule

colle ça dans un module standard. Ensuite, depuis la partie code de ta feuille, tu peux l'appeler ainsi :

VerrouillageMaj = True
ou
VerrrouillageMaj = False
__________________
Veriti
Ti_ est déconnecté   Réponse avec citation
Vieux 23/08/2005, 12h11   #5 (permalink)
XLDnaute Occasionel
 
Date d'inscription: août 2005
Messages: 159
Par défaut Re:Verrouillage majuscule

Merci, ca marche nickel, MAIS une fois sur 2 :S

Dès que j'effectue un click ou que je change de case avec les flèches, cela change le verrouillage.
En gros, c'est une fois majuscule, une fois minuscule, une fois majuscule,.....


guenfood est déconnecté   Réponse avec citation
Vieux 23/08/2005, 12h32   #6 (permalink)
Ti_
XLDnaute Impliqué
 
Avatar de Ti_
 
Date d'inscription: février 2005
Version Excel : Excel 2003 (PC)
Messages: 746
Par défaut Re:Verrouillage majuscule

depuis quelle procédure l'appelles-tu cette macro. Une macro événementielle ? Pourrais-tu nous la mettre pour qu'on voie ?
__________________
Veriti
Ti_ est déconnecté   Réponse avec citation
Vieux 23/08/2005, 12h57   #7 (permalink)
jeff
Guest
 
Messages: n/a
Par défaut Re:Verrouillage majuscule

Bonjour à tous
je me trouve un peut dans le même besoin a savoir sil est possible de verouiller en maj sur une colonne particuliere
Merci
  Réponse avec citation
Vieux 23/08/2005, 13h43   #8 (permalink)
XLDnaute Occasionel
 
Date d'inscription: août 2005
Messages: 159
Par défaut Re:Verrouillage majuscule

Voici donc le code tel que je l'ai tapé :
Code:
Private Declare Sub keybd_event Lib 'user32.dll' (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags&, ByVal dwExtraInfo&)

Property Let VerrouillageMaj(ByVal OnOff As Boolean)
'Ti
keybd_event IIf(OnOff, vbKeyCapital, vbKeyShift), 0, 0, 0
keybd_event IIf(OnOff, vbKeyCapital, vbKeyShift), 0, &H2, 0
End Property

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
VerrouillageMaj = True
End Sub
Ceci comme vous pouvez le voir, dans 'visualiser le code' de ma feuille.
guenfood est déconnecté   Réponse avec citation
Vieux 23/08/2005, 14h31   #9 (permalink)
Ti_
XLDnaute Impliqué
 
Avatar de Ti_
 
Date d'inscription: février 2005
Version Excel : Excel 2003 (PC)
Messages: 746
Par défaut Re:Verrouillage majuscule

Oui, chez moi ça marche parfaitement, mais j'y pense, ton clavier ne doit pas être configuré comme le mien (on en a discuté il y a quelque temps sur le forum de ces problèmes de clavier).
Bon, de toute façon, je suppose que tu veux simplement que tes saisies se fassent en majuscules dans tes cellules, alors dans ce cas, il peut être plus simple (et plus sûr) d'utiliser un autre événement, ainsi :

Private Sub Worksheet_Change(ByVal Target As Range)
Target = UCase(Target)
End Sub

Message édité par: Ti_, à: 23/08/2005 14:32
__________________
Veriti
Ti_ est déconnecté   Réponse avec citation
Vieux 23/08/2005, 14h53   #10 (permalink)
XLDnaute Occasionel
 
Date d'inscription: août 2005
Messages: 159
Par défaut Re:Verrouillage majuscule

Merci beaucoup.
Ca marche impeccable.
guenfood est déconnecté   Réponse avec citation
Vieux 23/08/2005, 15h02   #11 (permalink)
XLDnaute Barbatruc
 
Avatar de Celeda
 
Date d'inscription: février 2005
Localisation: Near the pink town
Messages: 2 524
Par défaut Re:Verrouillage majuscule

Bonjour,

Même si cela est résolu pour guenfood, cela n'est pas parfait pour mo: je t'explique Ti

la macro continue à tourner et l'écan tremble et en bas il est affiché 100 % recalcul,

je ne veux pas t'embêter, mais je trouve cela un peu gênant....

est-ce dû à ma version xl ici, 2000
Merci

Celeda
__________________


Le blog du voyage en Türkiye
Celeda est déconnecté   Réponse avec citation
Vieux 23/08/2005, 17h40   #12 (permalink)
Ti_
XLDnaute Impliqué
 
Avatar de Ti_
 
Date d'inscription: février 2005
Version Excel : Excel 2003 (PC)
Messages: 746
Par défaut Re:Verrouillage majuscule

ah oui ma petite dame, je vois ce que c'est

essaie comme ceci :

Private Sub Worksheet_Change(ByVal Target As Range)
Static OnIt%
if Not OnIt Then
OnIt = True
Target = UCase(Target)
OnIt = False
End If
End Sub
__________________
Veriti
Ti_ est déconnecté   Réponse avec citation
ANNONCES
Réponse

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +2. Il est actuellement 07h11.


(C) 2006 Excel Downloads