Connie a une feuille de travail qui a des noms de société dans chaque cellule de la colonne B.

Ils sont regroupés sous un en-tête de région (Nord-Est, Ouest, etc.) dans la colonne A. Elle aimerait appliquer une mise en forme conditionnelle aux noms de société afin que si un nom apparaît dans plus d’une région, il apparaisse en utilisant un arrière-plan ou du texte couleur qui facilite la recherche des entreprises correspondantes. Cela signifie que si une société est formatée en rouge, aucune autre société ne doit apparaître en rouge (elle doit apparaître sous une couleur différente, comme le bleu ou le vert). Connie ne sait pas comment configurer cela ou si cela peut même être fait avec un formatage conditionnel.

Il existe un moyen de marquer les doublons à l’aide de la mise en forme conditionnelle; suivez simplement ces étapes générales:

  1. Sélectionnez les cellules contenant les noms de votre entreprise.

  2. Affichez l’onglet Accueil du ruban et cliquez sur l’outil Mise en forme conditionnelle dans le groupe Styles.

  3. Sélectionnez Nouvelle règle. Excel affiche la boîte de dialogue Nouvelle règle de mise en forme.

  4. Cliquez sur l’option Mettre en forme uniquement les valeurs uniques ou dupliquées en haut de la boîte de dialogue.

  5. Assurez-vous que Dupliquer est sélectionné dans la liste déroulante de la moitié inférieure de la boîte de dialogue. (Voir la figure 1.)

  6. Cliquez sur le bouton Format et modifiez la mise en forme pour refléter la façon dont vous souhaitez que les noms de société en double apparaissent.

  7. Cliquez sur OK pour fermer la boîte de dialogue Nouvelle règle de mise en forme.

À ce stade, tous vos doublons doivent correspondre à la mise en forme que vous avez sélectionnée à l’étape 6. Le seul problème est que tous les doublons sont formatés de la même manière. En d’autres termes, si vous avez deux sociétés (société ABC et société DEF) et qu’il existe des doublons pour ces sociétés, elles sont toutes formatées de la même manière. Vous ne verrez pas de formatage différent pour les deux sociétés.

Bien sûr, vous pouvez facilement utiliser les capacités de filtrage d’Excel pour identifier les entreprises en double, les entreprises non dupliquées ou les noms d’entreprise individuels. Cela pourrait être le moyen le plus simple de «se concentrer» sur les entreprises que vous souhaitez localiser.

La seule façon d’utiliser la mise en forme conditionnelle pour appliquer des couleurs différentes à différents groupes de noms de société en double nécessite que vous identifiiez, dès le départ, les doublons réels. Avec cette liste en main, vous pouvez créer une série de règles de mise en forme conditionnelle utilisant des formules similaires aux suivantes:

=AND(ISNUMBER(FIND("ABC Company",B1)),COUNTIF($B$1:$B$99,"ABC Company")>1)

Dans cette formule, « Société ABC » est le nom de la société, B1 est la première cellule de la plage et B1: B99 est la plage complète de cellules. Pour chaque règle de mise en forme, vous pouvez appliquer une mise en forme différente appropriée à cette société particulière. Cela signifie que si vous saviez, dès le départ, qu’il y avait 24 noms de sociétés différents qui avaient des doublons, vous auriez besoin de mettre en place des règles de mise en forme conditionnelle pour gérer ces noms.

Complexe, en effet. Malheureusement, il n’existe pas de moyen plus simple d’utiliser la mise en forme conditionnelle. Vous pouvez cependant renoncer à la mise en forme conditionnelle et utiliser une macro pour faire ressortir vos doublons. La macro « automatique » la plus simple que nous puissions trouver (où vous n’avez pas besoin de connaître les noms en double à l’avance) est celle qui examine une plage de cellules et définit la couleur de cellule interne en fonction des noms de société en double.

Sub ColorCompanyDuplicates()

Dim x As Integer     Dim y As Integer     Dim lRows As Long     Dim lColNum As Long     Dim iColor As Integer     Dim iDupes As Integer     Dim bFlag As Boolean

lRows = Selection.Rows.Count     lColNum = Selection.Column     iColor = 2

For x = 2 To lRows         bFlag = False         For y = 2 To x - 1             If Cells(y, lColNum) = Cells(x, lColNum) Then                 bFlag = True                 Exit For             End If         Next y         If Not bFlag Then             iDupes = 0             For y = x + 1 To lRows                 If Cells(y, lColNum) = Cells(x, lColNum) Then                     iDupes = iDupes + 1                 End If             Next y             If iDupes > 0 Then                 iColor = iColor + 1                 If iColor > 56 Then                     MsgBox "Too many duplicate companies!", vbCritical                     Exit Sub                 End If                 Cells(x, lColNum).Interior.ColorIndex = iColor                 For y = x + 1 To lRows                     If Cells(y, lColNum) = Cells(x, lColNum) Then                         Cells(y, lColNum).Interior.ColorIndex = iColor                     End If                 Next y             End If         End If     Next x End Sub

Pour utiliser la macro, sélectionnez simplement les cellules contenant les noms de société, puis exécutez-la. La macro effectue trois passages à travers les cellules. Le premier passage regarde en arrière à travers les cellules à partir de celui en cours d’examen; il est utilisé pour déterminer s’il y a des « en arrière »

les doublons, car s’il n’y a pas de traitement supplémentaire sur cette cellule particulière. La deuxième passe regarde les cellules vers l’avant pour déterminer s’il existe des doublons dans le nom actuel de l’entreprise. Si tel est le cas, une troisième passe incrémente la valeur de la couleur de la cellule, puis l’applique aux doublons.

Notez que la macro définit la propriété ColorIndex de tous les doublons qu’elle trouve et incrémente la variable utilisée pour définir la propriété lorsqu’elle trouve un nouvel ensemble de noms de société en double. Pour tous les noms de sociétés pour lesquels il n’y a pas de doublons, la propriété ColorIndex de la cellule n’est pas modifiée. Cela signifie qu’il y a une limite au nombre d’entreprises pouvant être marquées, cependant – le ColorIndex ne peut être compris qu’entre 0 et 56. Les valeurs réellement affectées par la macro vont de 3 à 56, il n’est donc possible de formater que 54 regroupements d’entreprises .

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (12673) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365.