Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut Comment passer le clavier en majuscule

    Bonjour,

    Je voudrait qu'au lancement de mon UserForm le clavier se mette en majuscule et quand je sort redeviens en minuscule

    il y a bien la fonction Ucase mais ça répond pas forcement à mon attente.

    Merci de votre aide.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Bonjour
    Cela ne se fait qu'en passant par une fonction de l'Api de Windows, ce qui est quelque peu démesuré.
    Il est vraisemblable qu'une explication précise détaillée des tenants et aboutissants (de tes besoins) conduira à une solution moins "lourde".
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    J'ai un UserForm avec plein de TextBox à remplir.

    C'est TextBox me permette de crée des dossiers, remplir des fichiers et certaines de ces valeurs sont stocker dans des variables pour utilisation plus loin dans le code.

    Et comme toutes les information que je doit remplir doivent être en majuscule, c'est pour ça que je voulais savoir si c'était possible. Si vous me dite qu'il y a plus simple je suis complétement preneur.

    Merci

  4. #4
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Je m'en doutais un peu
    regarde ce que fait ceci (exemple)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
      KeyAscii = Asc(UCase(Chr(KeyAscii)))
    End Sub
    Que je préfère personnellement à cette autre solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub TextBox1_Change()
     TextBox1.Text = UCase(TextBox1.Text)
    End Sub
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    Y as-t-il un moyen de le généraliser d'un coup à tous les TextBox?

    Je n'ai pas que tu texte dans les TextBox j'ai aussi des valeurs numérique

  6. #6
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Je n'ai pas que tu texte dans les TextBox j'ai aussi des valeurs numérique
    Oui ? -->> il se trouve que les chiffres sont les mêmes en minuscule et en majuscule
    Pour le reste (appliquer une procédure évènementielle à plusieurs textboxes) -->> il te faut alors passer par un module de classe. Cela s'apprend et tu as pour apprendre cela un didacticiel sur ce forum.
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  7. #7
    Membre chevronné Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    mars 2007
    Messages
    1 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : mars 2007
    Messages : 1 035
    Points : 2 098
    Points
    2 098

    Par défaut

    Citation Envoyé par Nico451 Voir le message
    Je n'ai pas que tu texte dans les TextBox j'ai aussi des valeurs numérique
    Dans un TextBox (comme son nom l'indique) il y a du texte, il n'y a pas de valeur numérique, mais un texte que la représente.
    Cordialement,
    Patrice
    Pour dire merci, cliquer sur et quand la discussion est finie, penser à cliquer sur

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    Peut tu m'indiquer où je pourrais trouver ce didacticiel. Merci

  9. #9
    Membre régulier
    Profil pro
    Inscrit en
    avril 2007
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2007
    Messages : 549
    Points : 113
    Points
    113

    Par défaut

    Bonjour Nico451

    Si j'ai bien compris la question cela devrait suffire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub UserForm_Activate()
        SendKeys "{NUMLOCK}", False
    End Sub
     
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
            SendKeys "{NUMLOCK}", True
    End Sub
    A condition que le pavé numérique soit déverrouillé

  10. #10
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Peut tu m'indiquer où je pourrais trouver ce didacticiel. Merci
    tu veux de la lecture ? -->>
    En voilà

    https://tissotemmanuel.developpez.co...les-de-classe/
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  11. #11
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    modus57 : C'est pas le pavé numérique c'est le capLock que je veux activer pour que mon texte soit en Majuscule

  12. #12
    Membre régulier
    Profil pro
    Inscrit en
    avril 2007
    Messages
    549
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : avril 2007
    Messages : 549
    Points : 113
    Points
    113

    Par défaut

    Peut-être en remplacement tout simplement "Numlock" par "CapLock"

  13. #13
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    Merci, c'est ce que j'ai fait.

    Mais maintenant j'ai des problèmes supplémentaires :

    1) Quand je valide un textbox je fait apparaître un Frame avec des textbox. Le souci est que quand je veux valider la première textbox, je ne peux pas passer à la suivante.

    2) J'ai un souci aléatoire. Je m'explique. Avec cette fonction je suis en majuscule et le contrôle sur le clavier le caplock n'est pas activé. Quand j'appuie sur caplock je suis en minuscule.

    3) Je boss avec un ordi portable, mais j'utilise de temps en temps un clavier externe avec un pavé numérique. Le souci, est que quand je lance mon UserForm le pavé numérique ce désactive.

    4) Comme je suis en court de programmation, de temps à autre mon programme plante. Donc le Caplock est toujours actif, mais quand j'ecrit dasn mon UserForm je suis en minuscule.

    Je pense que le problème est que l'ordi garde en mémoire les paramètres, et comme je relance il fait l'inverse. Il faudrait que tous les paramètres redevienne normal dans tous les cas (beug, sortie avant d'avoir fini, etc...)

    Merci de votre aide.

  14. #14
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Cette manoeuvre de transformation de l'état du clavier est et sera toujours plutôt scabreuse.
    Je comprends que les modules de classe peuvent te paraître compliqués.
    Tu peux l'éviter si le nombre de tes textboxes concernées est relativement faible.
    Combien en as-tu, concernées par cette mise en majuscule ?
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  15. #15
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    unparia : Pour le moment 8 textBox pour les majuscules sur les 19 que j'ai.

    Sur les 19, j'ai 2 textbox pour la date, le reste c'est des valeurs numérique

  16. #16
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Sur les 19, j'ai 2 textbox pour la date, le reste c'est des valeurs numérique
    Ni les dates, ni les nombres ne sont dotés de caractères subissant la casse...
    tu n'as donc QUE 8 textboxes concernées par l'imposition de saisie en lettres majuscules ?
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  17. #17
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    unparia : Oui pour le moment que 8 TextBox. Sur les 8 j'ai 4 TextBox oui j'ai des lettres qui doivent être en majuscule avec des chiffres et des -. C'est des références pour ces 4 TextBox.

  18. #18
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    7 499
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 7 499
    Points : 13 032
    Points
    13 032

    Par défaut

    Bon ...
    Je ne comprends rien à tes nombres de textboxes concernées.
    Peu importe:
    mets ceci dans l'évènement keypress de chacune de celles concernées par l'imposition en majuscules :
    et crée cette procédure toto --->>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub toto(ByRef KA As MSForms.ReturnInteger)
      KA = Asc(UCase(Chr(KA)))
    End Sub
    cela suffira.
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...
    Les raisons réelles de délaissements ne sont pas toujours celles que l'on pense avoir déterminées.

  19. #19
    Responsable
    Office & Excel

    Avatar de Pierre Fauconnier
    Homme Profil pro
    Formateur et développeur informatique indépendant
    Inscrit en
    novembre 2003
    Messages
    13 769
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur informatique indépendant
    Secteur : Enseignement

    Informations forums :
    Inscription : novembre 2003
    Messages : 13 769
    Points : 36 840
    Points
    36 840
    Billets dans le blog
    41

    Par défaut

    Salut.

    Citation Envoyé par unparia Voir le message
    Oui ? -->> il se trouve que les chiffres sont les mêmes en minuscule et en majuscule [...]
    Citation Envoyé par unparia Voir le message
    Ni les dates, ni les nombres ne sont dotés de caractères subissant la casse...[...]
    Mon grain de sel...

    Sans pavé numérique, SHIFT ou CAPSLOCK sont nécessaires pour la saisie d'un chiffre

    Cela dit, je ne valide pas la modification du clavier, que ce soit par API ou autre
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Une fois pour toutes, je donne mon avis. Je ne vais pas le répéter à chaque message...
    Si je propose une solution générique sur votre solution spécifique, c'est parce que, fainéant de nature, je privilégie le réutilisable...
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Vous souhaitez rédiger pour DVP? Contactez-moi
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  20. #20
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur
    Inscrit en
    décembre 2018
    Messages
    75
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : décembre 2018
    Messages : 75
    Points : 35
    Points
    35

    Par défaut

    Bonsoir Pierre : D'accord pour ne pas modifier le clavier par API ou autre. Mais y as-t-il une solution acceptable?

    unparia : Je vais essayer

Discussions similaires

  1. Comment passer un clavier en qwertz sans bureau
    Par lodan dans le forum Windows 7
    Réponses: 10
    Dernier message: 23/02/2016, 14h04
  2. Comment passer de minuscule à majuscule?
    Par moilou2 dans le forum Excel
    Réponses: 8
    Dernier message: 08/09/2008, 15h44
  3. PC portable : passer le clavier en majuscule
    Par DURVILLE dans le forum Langage
    Réponses: 1
    Dernier message: 21/04/2008, 13h45
  4. Comment passer une colonne en majuscule
    Par Wiz-W dans le forum Langage SQL
    Réponses: 2
    Dernier message: 30/07/2007, 11h39
  5. comment passer de access à MySQL
    Par isa_21 dans le forum Requêtes
    Réponses: 4
    Dernier message: 06/10/2004, 08h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo