surbrillance avec conditions sur 2 feuilles

ndranghettino

XLDnaute Nouveau
Bonjour j'ai un classeur avec 2 feuilles de format identiques avec des infos qui peuvent être différentes
je voudrais surbriller sur la deuxième feuille les cellules différentes de la première feuille

par exemple dans le classeur ci-joint la cellule C2 de la feuille URE doit être surbriller car la valeur est différentes de la cellule C2 de la feuille UOF

merci d'avance de votre collaboration
 

Pièces jointes

  • test.xlsx
    19.9 KB · Affichages: 72
  • test.xlsx
    19.9 KB · Affichages: 72
  • test.xlsx
    19.9 KB · Affichages: 82

Papou-net

XLDnaute Barbatruc
Re : surbrillance avec conditions sur 2 feuilles

Bonsoir ndranghettino
Bonsoir CB60,

Une autre solution : cliquer sur le bouton Test de la deuxième feuille.

Cordialement.
 

Pièces jointes

  • Copie de test.xlsm
    30.7 KB · Affichages: 108
  • Copie de test.xlsm
    30.7 KB · Affichages: 102
  • Copie de test.xlsm
    30.7 KB · Affichages: 110

ndranghettino

XLDnaute Nouveau
Re : surbrillance avec conditions sur 2 feuilles

Bonsoir Papou-net

mon fichier a quasiment plus de 200 lignes
ce que j'ai envoyé n'est qu'un échantillon
comment puis-je intégrer ton bouton dans mon fichier final vu que je ne maitrise pas du tout VBA

As tu un mode opératoire

Merci d'avance
 

Papou-net

XLDnaute Barbatruc
Re : surbrillance avec conditions sur 2 feuilles

Bonsoir ndranghettino,

Tu dois afficher l'onglet "Développeur" dans le ruban : clic droit, Personnaliser le ruban, Ajouter.

Tu affiches cet onglet, tu cliques sur "Insérer" dans le module "Contrôles" et tu choisis "contrôles ActiveX", "Bouton de commande" qui est le premier dans la liste. Tu traces le bouton sur la feuille URE. Pour changer le titre du bouton, clic droit dessus, Propriétés, et dans la colonne à droite de Caption, tu entres le nom que tu veux lui donner. Ensuite, tu double-cliques sur le bouton, l'éditeur VBA s'affiche. Dans la fenêtre principale, tu peux lire ceci :

Code:
Private Sub CommandButton1_Click()

End Sub

Entre ces deux lignes, tu recopies le texte de la macro ci-dessous pour obtenir :

Code:
Private Sub CommandButton1_Click()
For Each cel In Sheets("URE").Range("2:65000").SpecialCells(xlCellTypeConstants)
  If Not cel.Value = Sheets("UOF").Cells(cel.Row, cel.Column) Then
    cel.Interior.ColorIndex = 6
    Else
    cel.Interior.ColorIndex = xlNone
  End If
Next
End Sub

Pour finir, tu quittes le mode Création en cliquant sur le bouton du même nom dans le module Contrôles du ruban.

Si tu as bien suivi toutes ces étapes, un simple clic sur le bouton lance la mise à jour de ta feuille.

Espérant avoir été explicite, et t'avoir donné le goût des macros.

Cordialement.
 

ndranghettino

XLDnaute Nouveau
Re : surbrillance avec conditions sur 2 feuilles

Salut Papu-net

Ca marche nickel
Mais pour mon info tu connais le langage VBA ou tu as utiliser l'assistant excel(visiblement excel sait le faire) si oui quelle est la traduction de ta macro
en tout cas merci de ta collaboration
 

Papou-net

XLDnaute Barbatruc
Re : surbrillance avec conditions sur 2 feuilles

Bonsoir ndranghettino,

Je commence à bien connaître VBA pour avoir déjà réalisé de nombreuses macros dans tous les domaines. Mais il est vrai, que j'ai vraiment commencé en utilisant l'enregistreur de macros, et en consultant de nombreux ouvrages consacrés à ce sujet. Mes connaissances "ancestrales" en Basic m'ont bien aidé.

Je vais ici tenter d'expliquer le fonctionnement de la procédure que je t'ai envoyée :

Code:
Private Sub CommandButton1_Click()
' Cette boucle analyse toutes les cellules qui contiennent des données (SpecialCells(xlCellTypeConstants))
' dans les lignes 2 à 65000 dans la feuille "URE"
' Affecte la cellule analysée à la variable "cel"
For Each cel In Sheets("URE").Range("2:65000").SpecialCells(xlCellTypeConstants)
  ' Compare la valeur de la cellule analysée (cel) à la cellule correspondante (cel.Row = ligne et cel.Column = colonne de cette cellule)
  ' sur la feuille "UOF"  
  If Not cel.Value = Sheets("UOF").Cells(cel.Row, cel.Column) Then
  ' Si les deux cellules sont différentes (not cel.value=) alors on met le fond de la cellule de la feuille "UOF" à jaune
    cel.Interior.ColorIndex = 6
    Else
  ' Sinon on efface le fond de la cellule de la feuille "UOF"
    cel.Interior.ColorIndex = xlNone
  End If
Next
End Sub

espérant avoir répondu.

Cordialement.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
313 004
Messages
2 094 322
Membres
105 993
dernier inscrit
Fred60600