je souhaiterais pouvoir comparer deux colonnes de données, à savoir
faire en sorte que les données qui sont présentes dans la colonne 1 mais
pas dans la colonne 2 soit listées dans une colonne 3.
Je n'ai pas réussi à m'en sortir avec les fonctions "classiques". Si
quelqu'un possése une tite routine VBA qui puisse répondre à mon
besoin ...
Merci d'avance pour vos réponse.
Cordialement
__________________________
Savoir que l'on ne sait rien est la base de toute connaissance.
Voilà un chtit bout de code qui doit faire la demande
Sub ComparaisonDansunefeuille()
'comparaison dans une feuille dans un seul classeur
Set sh2 = Sheets("Feuil1").Range("A1:A300")
Set sh1 = Sheets("Feuil1").Range("B1:B300")
For Each c In sh2
MaValeur = c.Value
If MaValeur <> "" Then
Set Plage = sh1.Columns("A:A").Cells.Find(MaValeur, lookat:=xlWhole)
If Not Plage Is Nothing Then
c.Range("C1") = "*"
Else
c.Range("C1") = ""
End If
End If
Next
End Sub
dans la colonne c il marque un asterix pour indiquer la présence des données
Cdlt
RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique
merci de poser vos questions VBA à cet endroit
salutations
RGI
Un MERCI en retour c'est sympa
et ne pas oublier le tag :après résolution.
je te remercie pour ta réponse, en parcourant les forums j'étais déjà
tombé sur ce bout de code, cela marche bien. Mais en fait j'aurais besoin
du contraire, non pas qu'il me signale les doublons mais plutot les valeurs
manquantes dans la colonne 2 par rapport à celles qui se trouvent dans
la colonne A.
Et pour faire plus gourmand j'aurais voulu qu'à la place de l'astériX
il me reporte les valeurs présentes colonnes 1 mais absentes de la
colonne 2.
Je traite en fait de longs listings de compteurs d'eau, et une routine de
ce type serait un gain temps non négligeable.
Débutant en VBA, je n'ai pas vraiment conscience de la difficulté de
ma requête. Peut-être vais je devoir bosser plus sérieusement mon
Excel VBA pour les nuls ...
Cdlt
__________________________
Savoir que l'on ne sait rien est la base de toute connaissance.
et bien ce n'est pas complexe je sais pour celui qui sait
donc voilà pour celui qui ne sait pas
Sub ComparaisonDansunefeuille()
'comparaison dans une feuille dans un seul classeur
Set sh2 = Sheets("Feuil1").Range("A1:A300")
Set sh1 = Sheets("Feuil1").Range("B1:B300")
For Each c In sh2
MaValeur = c.Value
If MaValeur <> "" Then
Set Plage = sh1.Columns("A:A").Cells.Find(MaValeur, lookat:=xlWhole)
If Not Plage Is Nothing Then
c.Range("C1") = ""
Else
c.Range("C1") = c.Value
End If
End If
Next
End Sub
Cdlt
RGI
__________________________
PS: VBA pour EXCEL est maintenant dans Bureautique
merci de poser vos questions VBA à cet endroit
salutations
RGI
Un MERCI en retour c'est sympa
et ne pas oublier le tag :après résolution.