Interdire une lettre

Signaler
Messages postés
1
Date d'inscription
mercredi 4 décembre 2019
Statut
Membre
Dernière intervention
4 décembre 2019
-
 Ditesmoicommentfofaire -
bonjour,

ayant déjà une validation des données et ne sachant pas en ajouter une autre ,
comment en VBA interdire la saisie d'une lettre dans une plage ?
merci !!!!

11 réponses

Messages postés
1396
Date d'inscription
lundi 2 juillet 2018
Statut
Membre
Dernière intervention
13 décembre 2019
184
Bonjour,
Un exemple de votre fichier avec explications serait le bienvenu.
Pour transmettre un fichier,
Veillez à ce qu'il n'y ait PAS DE DONNEES CONFIDENTIELLES
il faut passer par un site de pièce jointe tel que cjoint.com

Allez sur ce site : http://cjoint.com
Clic sur parcourir,
Cherche ton fichier,
clic sur ouvrir,
Clic sur "Créer le lien cjoint",
Copier le lien,
Revenir ici le coller dans une réponse...
Cordialement

Messages postés
7859
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
15 décembre 2019
1247
Bonjour,

Pas besoin de VBA, pour une validation de donnée multicritères, il faut utiliser une validation personnalisée avec une formule qui renvoie le booléen VRAI pour accepter la donnée (et donc FAUX pour la refuser).

Par exemple, pour ajouter en A1, le critère : ne contient pas la lettre A, utiliser la fonction ET() :
=ET(PremierCritère; TROUVE("A";A1 & "A")>NBCAR(A1))

Cordialement
Patrice

Personne ne peut détenir le savoir, c'est pour ça qu'on le partage.
Patrice33740
Messages postés
7859
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
15 décembre 2019
1247
VBA n'apportera rien de plus !
C'est quoi la validation existante ?
Voir https://www.commentcamarche.net/forum/affich-36345281-interdire-une-lettre#4

La vdd existante est sur la longueur du texte
Comprise entre
Minimum 7
Maximum 8
Patrice33740
Messages postés
7859
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
15 décembre 2019
1247
Donc la formule devient :
=ET(OU(NBCAR(A1)=7;NBCAR(A1)=8); TROUVE("O";A1 & "O")>NBCAR(A1))
Exemple :
https://mon-partage.fr/f/HIx67sP3/

Merci. Je regarde

Cela fonctionne.
Merci de votre patience....

Bonjour. Impossible d'envoyer mon fichier car il est sur mon poste au bureau et réseau très surveillé et restreint..

Plus précisément, il ne faut pas que l'on puisse saisir la lettre O dans une chaine de 8 caractères alphanumériques dans la cellule a1 par exemple..

Merciiii
Patrice33740
Messages postés
7859
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
15 décembre 2019
1247
Re,

Formule de validation pour la cellule A1 (à adapter) :
=ET(NBCAR(A1)=8; TROUVE("O";A1 & "O")>NBCAR(A1))

Refusera toute saisie de longueur différente à 8 caractères et toute saisie contenant la lettre O (majuscule).

EDIT : pour refuser aussi bien O (majuscule) que o (minuscule) remplacer TROUVE par CHERCHE