Ameliorer une macros

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

teodormircea

XLDnaute Occasionnel
Bonjour tout le Monde

J'ai trouve un code sur un site MSDN , qui trouve des Match parfait entre 2 colonnes et puis les colorie en vert. Le problème c'est que les colonnes doivent avoir les même dimensions et les valeurs qui sont Match doivent être sur la même ligne.
Je voudrais améliorer ce code pour trouver des Match dans des colonnes a des dimensions variables et valeurs qui sont pas sur la même ligne.
J'ai joint un exemple avec le code VBA
 

Pièces jointes

Re : Ameliorer une macros

Merci pour votre aide les gars.Les format conditionnel c'est une solution, j'aurais préféré une macros, comme çà je vais apprendre a les utiliser.Le truc c'est que ci c'est 2 colonnes approche A et B, chose facile dans ce cas, mais j'ai des colonnes qui ne sont pas approches, comme A et G par exemple, c'est pour ça que j'aurais préféré une macros.
Merci encore
 
Dernière édition:
Re : Ameliorer une macros

>JB : tout comme avec ta MeFC en A, il colorie la valeur.

J'ai compris qu'il fallait un matching entre A et B.
Si le même code existe 2 fois dans la colonne A et n'existe pas en B ,c'est une anomalie?

JB
 
Re : Ameliorer une macros

Re,

JB : seul teodormircea pourra répondre. J'ai fait, comme toi, avec ce que j'ai compris de la demande

teodormircea : les deux formules de MeFC peuvent s'appliquer sur des colonnes "distantes". Il suffit de changer les lettres de colonnes dans les formules

A+
 
Re : Ameliorer une macros

Bonjour,
Un peu long avec beaucoup de lignes mais bon:
Sub CompareColumns()
Dim Rang1 As Range
Dim Rang2 As Range
Set Rang1 = Application.InputBox("Selectionner la Première Colonne", Type:=8)
If Rang1.Columns.Count > 1 Then
Do Until Rang1.Columns.Count = 1
MsgBox "Vous ne pouvez sélectionner qu'une seule colonne"
Set Rang1 = Application.InputBox("Selectionner la Première Colonne", Type:=8)
Loop
End If
Set Rang2 = Application.InputBox("Selectionner la Seconde Colonne", Type:=8)
If Rang2.Columns.Count > 1 Then
Do Until Rang2.Columns.Count = 1
MsgBox "Vous ne pouvez sélectionner qu'une seule colonne"
Set Rang2 = Application.InputBox("Selectionner la Seconde Colonne", Type:=8)
Loop
End If
For Each Cel1 In Rang1
For Each Cel2 In Rang2
If Cel1 <> "" And Cel2 <> "" And Cel1 = Cel2 Then
Cel1.Interior.Color = vbGreen
Cel2.Interior.Color = vbGreen
End If
Next
Next
End Sub

A+
kjin
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
10
Affichages
587
Réponses
12
Affichages
802
Réponses
19
Affichages
761
Réponses
18
Affichages
607
Retour