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

Autres Modif sur une macro... voir fichier ...

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 !

Bonjour Christian,
Tenez vous à une macro ?
On peut le faire par formule avec :
VB:
=SIERREUR(RECHERCHEV(E2;$A$1:$C$100;3;0);SIERREUR(RECHERCHEV(GAUCHE(E2;2);$A$1:$C$100;3;0);""))
Format colonne F : Standard;;
 

Pièces jointes

Bonjour,
Pas tout compris dans la demande.
Dans quel cas, le OUI n'est pas possible. Doit-on simplement vérifier si il y a une partie concordante ??? L'intégralité ????
Pouvez-vous donner plus d'exemple par rapport à votre fichier avec justement des exemples ou se serait NON (En expliquant pourquoi) et comment doit on faire pour la recherche entre le OUI et le NON
Merci de votre retour
Cordialement
@+ Lolote83
 
Re, le forum, sylvanu, Lolote83,
Merci pour votre aide.
Dis-moi, sylvanu, pourquoi la formule ne fonctionne pas (expl ligne 793) elle ne place rien devant RTT (col F) alors qu'il y a un oui dans la colonne C.
Sinon , oui, je préfère par macro...
A vous lire.
Christian
 
elle ne place rien devant RTT (col F) alors qu'il y a un oui dans la colonne C.
😭 parce que je n'avais pas vu qu'il pouvait y avoir 3 caractères dans les codes.
En Pj rectifié avec :
VB:
=SIERREUR(RECHERCHEV(E2;$A$1:$C$100;3;0);SIERREUR(RECHERCHEV(GAUCHE(E2;2);$A$1:$C$100;3;0);SIERREUR(RECHERCHEV(GAUCHE(E2;3);$A$1:$C$100;3;0);"")))
 

Pièces jointes

Re bonjour à tous,
Avec une petite fonction personnalisée
VB:
Function Fct_TestOui(xVal)
    xPlage = Range("A2:A19")                                    'Plage Colonne A
    xPlageOui = Range("C2:C19")                                 'Plage Colonne C
    For F = 1 To UBound(xPlage)                                 'On parcours toute la plage
        If xPlageOui(F, 1) = "oui" Then                         'Si OUI dans colonne C
            If xVal Like "*" & xPlage(F, 1) & "*" Then          'Si correspondance
                Fct_TestOui = "OUI"                             'Alors OUI et on sort
                Exit For
            Else
                Fct_TestOui = ""                                'Sinon Vide
            End If
        End If
    Next F
End Function
En cellule F2=Fct_TestOui(E2) puis tirer vers le bas
@+ Lolote83
 
Bonjour Christian0258, sylvanu, Lolote83,

Voici une solution par formule plus générale que celle de sylvanu.

Définir d'abord dynamiquement le nom T par :
Code:
=DECALER(Couleurs!$A$1;1;;NBVAL(Couleurs!$A:$A)-1;3)
Formule matricielle en F2 à valider par Ctrl+Maj+Entrée :
Code:
=REPT("oui";ESTNUM(EQUIV("1oui";NB.SI(E2;"*"&INDEX(T;;1)&"*")&INDEX(T;;3);0)))
Edit : il vaut mieux utiliser CHERCHE, c'est un peu plus léger :
Code:
=REPT("oui";ESTNUM(EQUIV("1oui";SIGNE(CHERCHE(INDEX(T;;1);E2))&INDEX(T;;3);0)))
A+
 

Pièces jointes

Dernière édition:
Sur les 831 formules la fonction VBA de Lolote83 se recalcule chez moi en 35 millisecondes.

Pour les formules du post précédent :

- avec NB.SI => 8,6 millisecondes

- avec CHERCHE => 5,3 millisecondes.
 
- 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

Réponses
7
Affichages
294
Réponses
5
Affichages
159
Réponses
2
Affichages
165
  • Question Question
Microsoft 365 Format de nombres
Réponses
21
Affichages
422
Réponses
2
Affichages
113
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…