IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

mise en forme conditionnelle avec 2 conditions


Sujet :

Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Points : 61
    Points
    61
    Par défaut mise en forme conditionnelle avec 2 conditions
    Bonjour

    J'ai un tableau avec plusieurs col. J'aimerai faire une MFC de toutes les lignes ayant une valeur double en col B avec mais si les valeurs des lignes suivantes sont aussi des doublons, j'aimerai changer la couleurs des lignes.
    par ex

    A B C
    1 TOTO 124
    2 TITI 142
    3 TUTU 142
    5 TATA 142
    5 TYTY 166
    6 YOUTOU 166

    Soit les lignes 2,3,4 avec le doublon 142 en jaune par ex
    et les lignes 5 et 6 avec le dounlon 166 en bleu par ex pour différencier les doublons.

    Merci beaucoup pour votre aide

  2. #2
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2009
    Messages
    1 794
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 85
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 794
    Points : 3 094
    Points
    3 094
    Par défaut
    Bonjour,
    Remarque en passant vous faites un NB.SI sur la colonne B alors que les valeurs sont en colonne C
    Cordialement.

    RJ

  3. #3
    Membre éclairé
    Avatar de bifconsult
    Homme Profil pro
    Consultant
    Inscrit en
    Mars 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 189
    Points : 877
    Points
    877
    Par défaut
    Citation Envoyé par zaza45 Voir le message
    Bonjour

    J'ai un tableau avec plusieurs col. J'aimerai faire une MFC de toutes les lignes ayant une valeur double en col B avec mais si les valeurs des lignes suivantes sont aussi des doublons, j'aimerai changer la couleurs des lignes.
    par ex

    A B C
    1 TOTO 124
    2 TITI 142
    3 TUTU 142
    5 TATA 142
    5 TYTY 166
    6 YOUTOU 166

    Soit les lignes 2,3,4 avec le doublon 142 en jaune par ex
    et les lignes 5 et 6 avec le dounlon 166 en bleu par ex pour différencier les doublons.

    Merci beaucoup pour votre aide

    J'ai trouvé quelque chose : ATTENTION, j'ai EXCEL en Anglais, mais tu devrais pouvoir traduire facilement


    1-J'ai utilisé le premier Format Conditionnel ("Format all cells based on their values). Là j'ai pris la règle par défaut, mais tu peux paramétrer.
    2-J'ai utilisé la formule que tu cites, mais au lieu de mettre >1, je mets =1, et je mets comme format conditionnel "cellule fond blanc"
    3-Je mets cette second règle en première priorité et je valide le "stop if true".

    CHez moi ça roule. MP si besoin d'un fichier exemple.

    BC

    [EDIT]: De fait, la remarque précédente est pertinente: bien sûr la formule avec la colonne C, pas B. Et ça ne fonctionne pas pour du texte.

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Points : 61
    Points
    61
    Par défaut
    Bonjour

    Merci pour ta réponse. j'ai toujours le même souci car j'ai de nombreuses lignes sans doublon donc sans format de couleur

    Par contre le problème c'est lorque je rencontre deux doublons sur des lignes juxtaposées, j'aimerai que le premier doublon est un format et que le suivant en ai un autre pour le repérer très facilement

    ex

    124 sans format
    166 sans format
    145 sans format
    188 toute la ligne en rouge
    188 toute la ligne en rouge
    188 toute la ligne en rouge
    200 toute la ligne bleu
    200 toute la ligne bleu

    Merci beacoup pour le conseil

  5. #5
    Membre éclairé
    Avatar de bifconsult
    Homme Profil pro
    Consultant
    Inscrit en
    Mars 2012
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 189
    Points : 877
    Points
    877
    Par défaut
    La méthode que je t'ai expliquée fait cela à deux exceptions près:
    -Toute la ligne n'est pas colorée (seule la cellule)
    -Ca fonctionne pour un dégradé que tu peux paramétrer (rouge, mauve, bleu par exemple)

    Pour aller plus loin, il faudrait selon moi (mais d'autres personnes ici peuvent peut-être faire mieux) :
    -soit ajouter une colonne qui contiendrait des formules, te permettant alors d'appliquer un format conditionnel à la ligne entière
    -soit utiliser du code

  6. #6
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Points : 3 974
    Points
    3 974
    Par défaut
    Bonjour,

    Voici une solution avec VBA
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    Private Sub MarqueDoublons()
    Dim MaPlage As Range, Cell As Range
    Dim tablo()
    Dim DerLig As Long
        Set Valeur = CreateObject("Scripting.Dictionary")
        With Sheets("Feuil1") 'A adapter
            DerLig = .Range("B" & .Rows.Count).End(xlUp).Row
            Set MaPlage = .Range("B1:B" & DerLig)
            For Each Cell In MaPlage
                If Not Valeur.Exists(Cell.Value) Then Valeur.Add Cell.Value, Cell.Value
            Next
            tablo = Valeur.items
            For i = LBound(tablo) To UBound(tablo)
                Nb = Application.WorksheetFunction.CountIf(MaPlage, tablo(i))
                If Nb > 1 Then
                    For Each Cell In MaPlage
                        If Cell = tablo(i) Then Cell.EntireRow.Interior.ColorIndex = 3 + i Mod 53
                    Next Cell
                End If
            Next i
        End With
        Set MaPlage = Nothing
        Set Valeur = Nothing
    End Sub
    Cordialement.

  7. #7
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 773
    Points : 28 637
    Points
    28 637
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Citation Envoyé par zaza45 Voir le message
    Bonjour
    Merci pour ta réponse. j'ai toujours le même souci car j'ai de nombreuses lignes sans doublon donc sans format de couleur
    Par contre le problème c'est lorque je rencontre deux doublons sur des lignes juxtaposées, j'aimerai que le premier doublon est un format et que le suivant en ai un autre pour le repérer très facilement
    ex
    124 sans format
    166 sans format
    145 sans format
    188 toute la ligne en rouge
    188 toute la ligne en rouge
    188 toute la ligne en rouge
    200 toute la ligne bleu
    200 toute la ligne bleu
    Merci beacoup pour le conseil
    Pour avoir une couleur pour ceux qui ne sont pas en double, il suffit de mettre une même couleur à toutes les cellules du tableau. La mise en forme conditionnelle mettant dans une autre couleur les doublons, tu arriveras à ce que tu cherches sans placer une nouvelle règle.
    Par contre avoir une couleur différente suivant la valeur des doublons, il faudra soit passer par du VBA, soit utiliser une autre colonne qui permettra de placer une formule qui renverra une information à la MFC pour différencier le type de couleur à placer.
    Cela signifie aussi, qu'il faudra autant de règles, qu'il n'y a de doublons potentiellement différents.

    Pour souligner tout la ligne où se trouve les doublons et en admettant que la table soit contenue dans la plage A2:C20, le code à placer dans la Mise en forme conditionnelle après avoir sélectionné toute la plage est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =NB.SI($C$2:$C$20;$C2)>1
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Points : 61
    Points
    61
    Par défaut
    Bonsoir Coronna

    La réponse est un peu tardive mais j'étais en stage.

    effectivement j'ai utilisé 2 col pour la

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Points : 61
    Points
    61
    Par défaut
    Suite message

    et j'ai rajouter aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ET(NB.SI($C:$C;$C1)>1;NB.SI($C:$C;$C3)>1;$M1=$M3);VRAI;FAUX)
    C'est en parti résolu, j'ai bien une MFC pour les lignes ayant 3 fois la même valeur en col C, une autre si j'ai deux valeurs identiques en col C mais lorsque j'ai par ex 4 fois la même valeur identique en col M et deux valeurs différentes en col c , j'ai la même mise en forme.

    Je ne sais pas si je peux faire mieux

  10. #10
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 773
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 773
    Points : 28 637
    Points
    28 637
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Pour les versions au delà d'Office 2003 il n'y a plus les limites de 3 conditions.
    Petite remarque au passage. A propos de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(ET(NB.SI($C:$C;$C1)>1;NB.SI($C:$C;$C3)>1;$M1=$M3);VRAI;FAUX)
    Ceci donne le même résultat.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =ET(NB.SI($C:$C;$C1)>1;NB.SI($C:$C;$C3)>1;$M1=$M3)
    Le résultat de la fonction, ou des fonctions imbriquées dans La mise en forme conditionnelle au même titre que la Validation de données doit simplement renvoyer VRAI ou FAUX.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    158
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 158
    Points : 61
    Points
    61
    Par défaut
    Bonjour Coronna

    Merci pour la formule

Discussions similaires

  1. Mise en forme conditionnelle avec 2 conditions
    Par laurentSc dans le forum Excel
    Réponses: 12
    Dernier message: 14/01/2015, 19h04
  2. Mise en forme conditionnelle avec 4 conditions
    Par bentor22 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 26/04/2013, 16h01
  3. mise en forme conditionnelle avec date
    Par jeff192 dans le forum Excel
    Réponses: 1
    Dernier message: 20/03/2008, 16h08
  4. Mise en forme conditionnelle avec Access 97
    Par soso78 dans le forum IHM
    Réponses: 4
    Dernier message: 22/11/2007, 20h25
  5. Réponses: 4
    Dernier message: 29/03/2007, 09h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo