Contrôler la saisie d'une InputBox

Bonjour,

Je coince à nouveau et me retourne vers vous.

J'ai une macro qui nécessite la saisie d'une chaîne de caractères dans une InputBox pour pouvoir s'en servir par la suite. Je souhaiterais autoriser uniquement la saisie de lettres non accentué et de l'underscore pour une chaîne de caractères composé de 4 à 31 caractères.

Comment pourrais-je réaliser ce contrôle sans avoir à balayer l'ensemble des caractères dans une boucle if ?

En vous remerciant par avance pour votre aide

Bonsoir,

If est une instruction conditionnelle, pas une boucle !

Si tu mets des conditions pour valider, il faut tester sur chaque condition...

Mais pourquoi éliminer les caractères accentués ?

Passe à un UserForm qui est plus souple ...

Ajoute ensuite le contrôle de la longueur entre 4 et 31

148controle-frappe.xlsm (17.52 Ko)

@Sycor : la réponse te satisfait-elle ?

Bonjour,

Merci pour vos réponses. Effectivement MFerrand , je devrais me relire un peu mieux, désolé pour cette coquille . La saisie que je demande permet de nommer un onglet, mais également une macro. Pour éviter tout problème lié à l'usage de caractères inappropriés, je préfère limiter au basique, i.e. des lettres et l'undescore. La philosophie: il vaux mieux restreindre trop que pas assez.

N'ayant eu le temps de passer qu'en coup de vent hier, je n'ai eu le temps de poster une réponse, mais ta solution me satisfait Steelson. Pour être franc, c'est une solution que j'avais vu sur d'autres forums mais j'étais curieux de savoir si il était possible d'avoir le même type de contrôle avec un InputBox. Mais j'ai l'impression que même si c'est réalisable, ce serait beaucoup de travail pour finalement pas grand chose.

En vous remerciant à nouveau pour vos réponse

Ouais ! C'est une philosophie... que je ne partage pas. Les caractères accentués n'ont jamais posé problème dans les noms d'onglets et en ce qui concerne VBA, je considère que cela me garantit d'éviter toute confusion avec un mot-clé ou un autre élément du langage

Il y a tout de même assez longtemps maintenant que la limitation à l'ASCII a été dépassée.

Et puis j'aime assez mettre des accents, notamment parce qu'il n'y en a pas en anglais.

Cordialement.

C'est vrai ... je m'étais posé la question du pourquoi d'ailleurs !

Maintenant il y a encore des logiciels qui les refusent, certains tournent encore très bien sous des configurations très anciennes de windows ou sur serveurs, ils ont 20 ans et on n'y peut rien . J'avais rencontré le problème, je l'ai résolu en passant tout le bazar en majuscule non accentué + en enlevant tout ce qui n'est pas alphanum pour rester compatible du code barre 39.

Et puis je le prends aussi comme exercice neuronal pas idiot !

Rechercher des sujets similaires à "controler saisie inputbox"