Forcer majuscules lors scan code barre dans combobox

CAPRI_456

XLDnaute Occasionnel
Bonjour le forum,


j'ai un soucis avec la fonction "capslock" en vba
J'ai utilisé le fil :
'http://www.excel-downloads.com/forum/130298-vba-commande-pour-activer-le-pave-numerique-ver-num.html

Donc dans un module mKeboard ,j'ai placé le code y décrit
Où dois-je placer ma procédure pour qu'elle fonctionne correctement.
Perso, le l'ai mise dans Userform Initialize


Private Sub UserForm_Initialize()
Dim CapsLock
Dim c

'Le code VB ci-dessus n'a pas d'effet sur la lumière "Caps Lock" du clavier.

J'ai le choix entre les deux procédures suivantes :

'Dim c As control
'For Each c In USFYprint.Frame1.Controls
'If CapsLock = 0 Then SetCapsLock CapsLockOn 'on=1 pour mettre en majuscules
' voir module placer le capslock en majuscules
'If CapsLock = 1 Then SetCapsLock CapsLockOff
' off=0 pour mettre en minuscule
Next c
'---------------------------------------------------------
'For Each c In USFYprint.Frame1.Controls
If CapsLock = False Then CapsLock = True
If CapsLock = True Then CapsLock = False
Next c
'-----------------------------------------------------------
Au fait cela fonctionne lorsque mon clavier est en minuscules,
mais si le met le clavier en majuscule, il m'intègre ma saisie en minuscules.

Quelle est la faute ??

Merci pour votre aide.

CAPRI_456
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Forcer majuscules lors scan code barre dans combobox

Bonjour Capri, bonjour le forum,

Sans avoir testé, ça me semble normal puisque tu envisages les deux possibilités et tu transformes par la possibilité inverse. Si ton clavier est en minuscules tu veux des MAJUSCULES et si est en MAJUSCULES tu veux des minuscules... Il ne faut, je pense, garder que l'option Minuscules/MAJUSCULES. Peut-être comme ça :
Code:
'Dim c As control
For Each c In USFYprint.Frame1.Controls
If CapsLock = 0 Then SetCapsLock CapsLockOn 'on=1 pour mettre en majuscules 
Next c
'---------------------------------------------------------
For Each c In USFYprint.Frame1.Controls
If CapsLock = False Then CapsLock = True
Next c
 

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

Bonjour, Bon appétit à tous,

Merci Robert, PierreJean,
j'ai testé vos deux propositions,

et toujours j'ai l'inverse de ce que je souhaite
(donc dès que mon clavier majuscule bascule , l'encodage se réalise en minuscules...

pas sympa ce Truc
DOnc je continue à chercher....

J'avais ceci:

'1)'Forcer les majuscules pour TEXTE ......lors de la saisie dans un Combobox
'keyAscii = Asc(UCase(Chr(keyAscii)))

Mais cela ne fonctionne pas non plus....

Courage, espoir, je sens que cela va venir....

Bien à vous
CAPRI_456
 

pierrejean

XLDnaute Barbatruc
Re : Forcer majuscules lors scan code barre dans combobox

Re

As-tu testé mon fichier en réalisant une saisie dans le textbox imediatement apres ouverture de l'USF ??

euh !! Apres controle celui-ci est mieux
 

Pièces jointes

  • CAPRI.xls
    44.5 KB · Affichages: 112
  • CAPRI.xls
    44.5 KB · Affichages: 102
  • CAPRI.xls
    44.5 KB · Affichages: 88
Dernière édition:

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

PierreJean,
Je viens de le tester, tant dans le tiens que dans le mien,
lorsque mon clavier est en minuscule OK : touot devient majuscules,
mais lorsque le clavier est en majuscules , il me met tout en minuscules !!

D'ou vient ?


Re

As-tu testé mon fichier en réalisant une saisie dans le textbox imediatement apres ouverture de l'USF ??

euh !! Apres controle celui-ci est mieux
 

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

Bonsoir le Forum, PierreJean , Robert,
voici j'ai trouvé sur la toile un code similaire.....

A placer dans un module

'Written: June 21, 2009
'Author: Leith Ross
'Summary: Turns the CAPS LOCK, on and off.
' Works with Windows NT, 2000, 2002, 2003, and XP


'1. GetCapsLockStatus returns a boolean value. True if the key lock is on or false if it isn't.
'2. CapsLockToggle changes the key lock to the opposite state.
'3. CapsLockOn sets the key lock.
'4. CapsLockOff releases the key lock.


Private Const VK_CAPITAL = &H14
Private Const KEYEVENTF_EXTENDEDKEY = &H1
Private Const KEYEVENTF_KEYUP = &H2
Private Declare Sub keybd_event _
Lib "user32.dll" _
(ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)

Public Declare Function GetKeyState _
Lib "user32.dll" _
(ByVal nVirtKey As Long) As Integer



'-----------------------------------'
' CAP LOCK ROUTINES '
'-----------------------------------'
Sub CapsLockToggle()
keybd_event VK_CAPITAL, 0, 0, 0
keybd_event VK_CAPITAL, 0, KEYEVENTF_KEYUP, 0
End Sub

Sub CapsLockOn()
If Not (GetKeyState(VK_CAPITAL) = 1) Then
keybd_event VK_CAPITAL, 0, 0, 0
keybd_event VK_CAPITAL, 0, KEYEVENTF_KEYUP, 0
End If
End Sub

Sub CapsLockOff()
If (GetKeyState(VK_CAPITAL) And 1) Then
keybd_event VK_CAPITAL, 0, 0, 0
keybd_event VK_CAPITAL, 0, KEYEVENTF_KEYUP, 0
End If
End Sub

Function GetCapsLockStatus() As Boolean
GetCapsLockStatus = GetKeyState(VK_CAPITAL)
End Function


Et A appeler dans "UseForm Initialize"
et ou dans différents boutons qui réouvrent le UserForm

If CapsLock = False Then Call CapsLockOn

Donc c'est similaire à vos propositions, mais probablement que j'ai mal appliqué le "If CapsLock = False Then CapsLock = True".
Effectivement donc, je n'ai besoin que de l'activation de majuscule su j'ai des minuscules.
Donc à chaque entrée , sortie de l'USF, je vérifie si je n'ai pas utilisé des minuscules à mon clavier t si oui , je lui demande de repasser en mode majuscules ,juste avant d'encoder (manuellmnt ou en scan)....

Merci à vous
CAPRI_456
 

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

Bonjour le Forum, Staple 1600,

L'idée du fil est intéressante, soit utiliser une police qui ne rend que des caractères majuscules.
Cependant, comme je comlète le Userforom au Moyen d'un lecteur de codes à barres (code128.ttf) et que je laisse la possibilité de compléter manuellement où par code-barres, il m'est difficile d'adopter cette méthode.

Cependant, je réfléchis, .
je pourrais utiliser ma méthode pour ce champ et la méthode du fil pour les champs qui ne sont pas complétés par lecteru "code-barrre"

Encore merci au Forum pour toutes ces avancées positives

CAPRI_456




Bonsoir à tous


Peut-être une autre approche possible
Voir dans ce fil
https://www.excel-downloads.com/threads/ecrire-en-majuscules.94966/
(Je ne sais pas si ces polices sont disponibles sur les contrôles d'un Userform)

Si c'est le cas, tu auras toujours des majuscules (sans avoir à te préoccuper de ton clavier ;) )
 

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

Bonjour le Forum, Pierrejean,

Je teste ta proposition,
lorsque je suis en minuscule : ok alors enregistre en majuscule
mais si je suis déjà en majuscule= alors là il me met des minuscules...

Pour ce qui concerne ma proposition, elle n'est "pas au top"

Je revois celle de staple

Bien à vous
Merci

CAPRI_456
 

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

Et bien, après test , aussi bien le changement de police, que l'utilisation de UCASE font en sorte que
au niveau des lettres de l'alphabet , c'est OK, mais où cela coince c'est lorsque j'ai des lettres et des chiffres, et cela coince au niveau des chiffres...
ex 11FR00EX123456 devient &&FRààEX&é"'(§


Bonjour le Forum, Pierrejean,

Je revois celle de staple

CAPRI_456

Il y doit bien avoir une solution pour l'alphanumérique ?

A+Je cherche,

CAPRI_456
 

pierrejean

XLDnaute Barbatruc
Re : Forcer majuscules lors scan code barre dans combobox

Re

Curieux !!

Chez moi aussi bien avec XL2000 que XL2010 le Ucase dans sub.... Change fonctionne aussi bien avec des alphas (qui passent en Majuscule) qu'avec des numeriques
Peux-tu mettre un fichier test ???
 

CAPRI_456

XLDnaute Occasionnel
Re : Forcer majuscules lors scan code barre dans combobox

Le Forum, Pierrejean,

je joins le fichier test...
Bien à toi
Et merci de te pencher sur ce "stupid" capslock....
CAPRI_456
 

Pièces jointes

  • modforum.zip
    194.5 KB · Affichages: 55
  • modforum.zip
    194.5 KB · Affichages: 63
  • modforum.zip
    194.5 KB · Affichages: 58

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 086
Messages
2 085 197
Membres
102 814
dernier inscrit
JLGalley