Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

macro ou formules pour comparer

  • Initiateur de la discussion Initiateur de la discussion kakachi
  • Date de début Date de début

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 !

K

kakachi

Guest
Bonjour chers excelnautes, 😀😀

je souhaite obtenir de l'aide afin de solutionner mon problème. Je cherche à mettre en place un programme qui me comparera 2 colonnes de valeurs.

Je joins mon fichier excel afin de mieux visualiser mon problème.

Je vous souhaite une bonne journée 😉😉

@+, Kakachi
 

Pièces jointes

Re : macro ou formules pour comparer

Bonjour Kakachi, bonjour le forum.

Pour ton problème, voici une petite macro qui devrait t'aider, tu peux la lancer via le bouton "Comparaison".

VB:
Option Explicit

Sub Comparaison()

    Dim i, j, k As Long
    Dim Plage1, Plage2 As Range
    Dim Cell1, Cell2 As Object
    
    k = 2
    i = Sheets(1).Range("A65536").End(xlUp).Row
    j = Sheets(1).Range("D65536").End(xlUp).Row
    
    Sheets(1).Range("G2:G1000").ClearContents
    
    Set Plage1 = Sheets(1).Range("A3:A" & i)
    Set Plage2 = Sheets(1).Range("D3:D" & j)
    
    For Each Cell1 In Plage1
    Set Cell2 = Plage2.Find(What:=Cell1.Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not Cell2 Is Nothing Then
        If Cell1.Offset(0, 1).Value > Cell2.Offset(0, 1).Value Then
            Sheets(1).Range("G" & k).Value = Cell2.Value
            k = k + 1
        End If
    End If
    Next Cell1

End Sub
 

Pièces jointes

Re : macro ou formules pour comparer

Bonjour kakachi,

Voici un exemple de macro à insérer dans un module de code standard :

Code:
Sub Comparer()
With Sheets("Feuil1")
  For Each cel In .Range("F9:F" & .Range("F65536").End(xlUp).Row)
    Set lg = .Range("C9:C14").Find(cel.Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not lg Is Nothing Then
      If .Range("G" & cel.Row) < .Range("D" & lg.Row) Then
        .Cells(.Range("C65536").End(xlUp).Row + 1, 3) = cel.Value
      End If
    End If
  Next
End With
End Sub

Concernant une solution par formule, je ne vois pas mais je pense que ça doit être également possible.

Espérant avoir répondu.

Cordialement.

Edit : bonjour Compress, tu as été le plus rapide.
 
Re : macro ou formules pour comparer

Bonjour Compress,

je te remercie pour ton aide, c'est exactement ce que je souhaitais obtenir !!!

je te souhaite une bonne journée

@+, Kakachi
 
Re : macro ou formules pour comparer

Lol Papounet à 3 minutes 😉

Solution presque identique 😉

Bonne journée 😛

Oui, presque les mêmes solutions mais peux-tu me dire pourquoi tu effaces la plage "G2:G1000" en début de macro ?

Hormis le fait qu'on obtient un message d'erreur à cause des cellules fusionnées en ligne 7, tu ne peux plus comparer les nombres de citation.

Bonne journée à toi également.

Cordialement.
 
Re : macro ou formules pour comparer

Je ne sais plus pourquoi j'ai mis ça lol car je pensais relancer la macro et je l'ai testé avec plusieurs données ça allait plus vite. Effectivement tu as raison...

Papounet 1 Compress 0

Enfin bon 😉


Pour les formules je suis d'accord en vba ça va un peu plus vite et en formule je ne vois pas comment faire instinctivement.

Allez hop au boulot j'ai d'autres macros à faire pour ma boite cette fois.
 
Re : macro ou formules pour comparer


RE :

Et pourtant, àa a l'air de fonctionner pour kakachi.

L'essentiel n'est-il pas qu'il semble avoir trouvé son bonheur ?

Bon courage à toi !
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Comparer 2 onglets
Réponses
8
Affichages
672
  • Résolu(e)
Microsoft 365 transposer
Réponses
6
Affichages
290
  • Question Question
Microsoft 365 Formule Excel
Réponses
4
Affichages
364
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…