Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 Résolu par SI : saisie en MAJUSCULE

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour à toutes et à tous de bon matin

J'ai une question pour le Fun :

Dans mon fichier, nous saisissons des NOMS et prénoms (les NOMS doivent toujours être en MAJUSCULE).
J'ai un code obtenu depuis longtemps sur le net qui fonctionne bien :
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("h9:h25")) Is Nothing And Target.Count = 1 Then
    Application.EnableEvents = False
    Target = UCase(Target)
    Application.EnableEvents = True
End If
End Sub

Cependant, à la saisie en position minuscule, évidemment, le code transforme en MAJUSCULE qu'après son exécution.
Est-il possible que l'action du code se fasse au fur et à mesure de la saisie ?

En vous remerciant, je vous souhaite à toutes et à tous un super et beau WE
Amicalement,
Lionel,
 

Pièces jointes

  • Majuscule.xlsm
    13.8 KB · Affichages: 44
Dernière édition:

Modeste geedee

XLDnaute Barbatruc
Bonsour® reste la possibilité de forcer lors de l'activation de la feuille concernée, le clavier en "corbeille haute" (Majuscules), à l'aide d'une API...
et le problème reste le même si certaines saisies doivent être faites en minuscule...
 

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Bonjour Modeste, le forum,

Merci d'être là et de m'avoir répondu
C'est juste une question de "confort" et pour éviter que mes intervenants "jouent" avec la touche majuscule/minuscule cela entraînant (têtes de linottes que nous sommes LOL), des saisies souvent "bizarres"

Le code permettant de transformer la saisie en Majuscule dans certaines cellules me va très bien.
Cependant, comme l'écriture en Majuscule ne s'affiche qu'après l'exécution du code, certains ont toujours "tendance" à se mettre en Majuscule ce qui entraîne le souci précédent

Si ma demande ne peut recevoir qu'une réponse plus contraignante que le petit souci, mieux vaux en rester là LOL.

Encore merci modeste
Bon dimanche à toutes et à tous,
Amicalement,
Lionel,
 

job75

XLDnaute Barbatruc
Bonjour Lionel, chris, DoubleZero, Modeste geedee,

Plutôt que le code du post #1 il vaut peut-être mieux utiliser :
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Range
Set r = Intersect(Target, [H9:H25], Me.UsedRange) 'plage à adapter
If r Is Nothing Then Exit Sub
For Each r In r 'si entrées multiples (copier-coller)
  If CStr(r) <> UCase(r) Then r = UCase(r)
Next
End Sub
A+
 

Si...

XLDnaute Barbatruc
Bonsoir
Et ainsi ?
 

Pièces jointes

  • Saisie en majuscule.xlsm
    22.3 KB · Affichages: 44

Lone-wolf

XLDnaute Barbatruc
Bonjour tout le monde

@Si... : bien vu le fait d'avoir mis une textbox . C'est dommage(ou peut-être impossible, je ne sais pas) que MIMI ne mette pas cet option (mise en majuscule direct) sur les feuilles dans le format personnalisé par exemple.
 

Lone-wolf

XLDnaute Barbatruc
Bonjour chris

Ce que je voulais dire par là, au moment où tu rentre en lettre dans une textbox, le changement s'éffectue tout de suite n'est-ce pas? Ce serait bien(si possible) d'en faire de même avec les cellules.

@ Lionel: une proposition sans textbox. l'inconvénient c'est qu'il faut utiliser TAB à chaque lettre entrée et faire attention à éffacer le texte qui reprend celui des cellules précédentes. Pour vider la variable temp, place le curseur sur la cellule vide et utilise TAB.
 

Pièces jointes

  • Classeur-test.xlsm
    16.3 KB · Affichages: 37
Dernière édition:

Usine à gaz

XLDnaute Barbatruc
Supporter XLD
Re à toutes et à tous,

Lone, ta solution est trop complexe pour la saisie mais ça marche.

Si, merci pour votre solution qui me va bien mais un tout petit souci (encore du confort LOL)

J'ai vu qu'il fallait cliquer sur une autre cellule pour valider.
Est-il possible de passer directement à une autre cellule genre "R.Offset(0, 6)" et que la validation soit automatique ?

Amicalement,
Lionel,
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…