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

Macros et VBA Excel Discussion :

Colorier celui qui n'appartient pas à la sélection. [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de BRUNO71
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2007
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 507
    Par défaut Colorier celui qui n'appartient pas à la sélection.
    Bonjour à vous,

    D'habitude il s'agit de supprimer les doublons.

    Est il possible sur deux colonnes (A et B) de colorier en rouge gras (VBA) un mot qui n'appartient pas à la colonne A par exemple...

    Il est possible qu'il n'y ait pas le même nombre de texte dans les deux colonnes...

    Ou puis-je trouver cette information, car je trouve toujours (la suppression des doublons)....

    Merci par avance...

  2. #2
    Membre éclairé Avatar de BRUNO71
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2007
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 507
    Par défaut
    Bonjour,
    Je viens de tester les MFC .
    La mise en forme conditionnelle fonctionne très bien, mais !

    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
     
       Selection.FormatConditions.AddUniqueValues
        Selection.FormatConditions(Selection.FormatConditions.count).SetFirstPriority
        Selection.FormatConditions(1).DupeUnique = xlDuplicate
        Selection.FormatConditions(1).StopIfTrue = False
        Selection.FormatConditions.AddUniqueValues
        Selection.FormatConditions(Selection.FormatConditions.count).SetFirstPriority
        Selection.FormatConditions(1).DupeUnique = xlUnique
        With Selection.FormatConditions(1).Font
            .Bold = True
            .Italic = False
            .Color = -16776961
            .TintAndShade = 0
        End With
        Selection.FormatConditions(1).StopIfTrue = False
    Comme j'ai besoin de copier la colonne B avec les modifications pour l'emmener sur une autre feuille et bien....plus rien ne va.
    Excel garde en mémoire cette condition et continu de l'appliquer....toutes mes cellules (colonne B) deviennent unique

    Comment faire avec VBA ?
    Si un des mots de la colonne B feuil1 n'est pas dans la colonne A feuil2 et bien il devient rouge et gras...

    Merci pour votre aide.

  3. #3
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2016
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2016
    Messages : 102
    Par défaut copier-coller
    Bonjour,

    une question toute bête mais fait tu dans ton code un copier-coller ou copier-collage special ?

    ... ActiveSheet.Paste

    ou bien

    ... Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False

    Je pense qu'avec un collage spécial de formules (ou valeurs, tu vois) tu ne récupérera pas les formats conditionnels de tes cellules d'origine. A tester...

    CordialemenT.

    Bruno

  4. #4
    Membre éclairé Avatar de BRUNO71
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2007
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 507
    Par défaut
    Bonjour ZX12R,

    Çà sent la Kawasaki ça
    Bon sinon très bonne idée, j'ai de suite essayé, mais non....ça ne fonctionne pas..
    J'ai essayé manuellement, en faisant un copié/collé puis collage spécial dans une autre page...rien n'y fait.

    Je cherche, je cherche..

    Merci

  5. #5
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,
    oublies tes MFC (supprimes-les)
    et adaptes ce code (bien sur si j'ai compris)
    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
    Private Sub CommandButton1_Click()
    Dim tb1, tb2, x As Long, y As Long, dercel As Range
    With Sheets("Feuil1")
      Set dercel = .Range("A" & .Rows.Count).End(xlUp)
      tb1 = .Range("A2", dercel)
      Set dercel = .Range("B" & .Rows.Count).End(xlUp)
      tb2 = .Range("B2", dercel)
      For x = 1 To UBound(tb1, 1)
        For y = 1 To UBound(tb2, 1)
          If tb2(y, 1) = tb1(x, 1) Then
            .Range("B" & y + 1).Font.ColorIndex = 3
            .Range("B" & y + 1).Font.Bold = True
          End If
        Next y
      Next x
      Sheets("Feuil2").Range("A2", "A" & dercel.Row) = tb2 'changer par la destination souhaitée
    End With
     
     
    End Sub
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  6. #6
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut heu
    prends une colonne vide
    selectionne le meme nombre de cellule que tu a dans A et met cette formule matricielle dans chaque cellule

    =SIERREUR(INDEX($A$2:$A$27;EQUIV(0;INDEX(NB.SI($B$1:B1;$A$2:$A$27);0;0);0)); » »)
    http://www.formuleexcel.com/comment-...sieurs-listes/
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  7. #7
    Membre éclairé Avatar de BRUNO71
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2007
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 507
    Par défaut
    Bonjour à tous,

    Merci casefayere, . Tu as bien compris.
    Excellent, avec quelques modifications pour mon usage, c'est super.

    Merci à tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2007] Erreur : L'indice n'appartient pas à la sélection
    Par Nayko dans le forum VBA Access
    Réponses: 5
    Dernier message: 04/04/2014, 11h23
  2. Réponses: 13
    Dernier message: 27/04/2012, 10h57
  3. Tableau de valeurs : l'indice n'appartient pas à la sélection
    Par Maryy dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/08/2008, 14h42
  4. erreur execution 9: l'indice n'appartient pas à la sélection
    Par oliver75 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 30/07/2007, 12h00
  5. l'indice n'appartient pas à la sélection ??
    Par Bernard83140 dans le forum Access
    Réponses: 4
    Dernier message: 06/05/2006, 22h27

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