Vérification d'une plage de cellule par une macro

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

LeZéro

XLDnaute Nouveau
D'abord bonjour à tous, je me présente LeZéro, stagiaire débutant sur Excel et super débutant en VBA ! 😛

Entrons dans le vif du sujet. On me demande de protéger une plage de cellule de la manière suivante :

Pour chaque ligne (1403 sur cette plage) il faut que la valeur X ne soit présente au maximum q'une fois (sur la ligne).
que la valeur S ne soit pas présente si la valeur X n'est pas déjà sur la ligne.

Pour éviter les doublons (soit la première condition), j'ai réussi à trouver une solution avec la validation des données personnalisée et la formule "NB.SI". Or, celle ci ne marche plus lorsqu'il s'agit de la faire fonctionner en enregistrant une macro avec cette manip (erreur 1004). Mais le problème c'est que je ne me vois pas répéter l'opération pour chacune des 1403 lignes de cette plage : il faut faire une boucle (enfin je crois).

Pour la deuxième condition, après avoir trimé sur les moteurs de recherches et autres forums, je ne trouve rien.

Votre aide me serait extrêmement précieuse ! Merci d'avance.
 
Re : Vérification d'une plage de cellule par une macro

Re

Je reviens a l'instant

Le code doit etre mis dans le module de la feuille concernée
pour cela :
dans l'editeur Vba , cliquer sur le nom de la feuille dans Vba project
Ensuit derouler la liste de gauche , choisir Worksheet puis dans la liste de droite choisir Change
Copier le coeur de la macro et le coller apres
Private Sub Worksheet_Change(ByVal Target As Range)

Je jette un oeil sur le fichier

Edit: Voila dans ton fichier
Tu remarqueras que j'ai adapté les chiffres reperant les numeros de colonne
 

Pièces jointes

Dernière édition:
Re : Vérification d'une plage de cellule par une macro

Bonjour à tous !

Pierre Jean, ta macro est presque arrivée à boût de tous mes tracas ^^. Mais apparement les menus déroulants proposant X et S sur cette plage de cellule affectent la condition sur l'impossibilité d'avoir 2 X sur la même ligne.
C'est en tout cas ce que j'ai remarqué en essayant la même Validation des données/Liste (X ; S) sur notre échantillon.

Voyez plutôt : les S ne peuvent plus s'insérer nulle part, tandis qu'une rangée de X pourrait occuper une ligne entière.
 

Pièces jointes

Dernière édition:
Re : Vérification d'une plage de cellule par une macro

Bonjour à tous,

LeZéro : "X" n'est pas la même chose que "X "
évite les espaces dans ta liste déroulante, ça changera beaucoup de choses
d'autre part, la macro de PierreJean teste les colonnes 2 à 36 (B à AJ) et tu as fait un tableau de A à AJ, il faut corriger d'un côté ou l'autre...
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour