XL 2016 Comparer Lignes Tableau Par Couple de Deux

Amigo

XLDnaute Occasionnel
Bonjour Le Forum
je reviens vers vous pour solliciter votre aide sur un problème.
Je souhaite comparer des lignes de Tableau par Couple de deux.
Ex : Ligne 1 avec ligne 2 si cellule A2 <> A3 on colorie A3 (Ligne 1 correspond à la première ligne de mon tableau "TabHisto" Ligne "0" c'est les titres de colonnes)
Ligne 3 avec ligne 4 si cellule A4 <> A5 on colorie A5
Ligne 5 avec ligne 6 si cellule A6 <> A7 on colorie A7
etc ....
j'ai essayé de créer deux tableaux un les lignes impairs et l'autre lignes pairs et les comparer ensemble sans réussite.
ci-joint fichier avec résultat attendu et le début de la macro.
Merci par avance
Cordialement
Amigo
 

Pièces jointes

  • Classeur1.xlsm
    20.4 KB · Affichages: 13

Amigo

XLDnaute Occasionnel
Bonjour Patrice33740, JHA, le Forum
Cette formule s'ajoute automatiquement dans le cadre d'un tableau structuré et valider par insertion tableau.
Une petite question : Au cas où le tableau n'est pas déclaré et ce n'est que des lignes et de colonnes existe-t-il une façon d'appliquer automatiquement aux couples de lignes ajoutés ?
Une petite précision la feuille comporte plus de 2000 lignes et plus de 20 colonnes avec rajout de 50 lignes à chaque saisie
Cordialement
Amigo
 

Amigo

XLDnaute Occasionnel
Bonjour Patrice33740, JHA, le Forum
@ Patrice33740 Merci pour ton dernier message. La tache risque de faire des oublis car le fichier est manipulé par plusieurs utilisateurs.

Pour mon apprentissage et mon avancement, je me suis inspiré de la 1ère formule de JHA et crée une macro qui fonctionne bien mais je n'ai pas réussi le test de cellule = 0 et cellule(ligne + 1) ="" comme JHA la résolu avec NON(EXACT) .
Si quelqu'un a une idée sera la bienvenue.
VB:
Dim i, j, nbcolo, nbligne As Long
Dim NomHisto
NomHisto = "TabHisto"
nbcolo = Range(NomHisto).Columns.Count
nbligne = Range(NomHisto).Rows.Count
Range(NomHisto).Interior.Color = xlColorIndexNone
    For i = 1 To nbligne
        For j = 1 To nbcolo
            If (i Mod 2 = 1) And Range(NomHisto).Item(i, j).Value <> Range(NomHisto).Item(i + 1, j).Value Then
                Range(NomHisto).Item(i + 1, j).Interior.Color = RGB(169, 208, 142)
                Range(NomHisto).Item(i + 1, j).Font.Bold = True
            End If
        Next j                     
    Next i

BOnne journée
Cordialement
Amigo
 

Discussions similaires

Statistiques des forums

Discussions
311 724
Messages
2 081 937
Membres
101 844
dernier inscrit
pktla