Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

mettre en corrélation deux colonnes de données

6 réponses
Avatar
ymer.hyseni
Bonjour,

j'ai des donn=E9es, chiffres dans deux colonnes, colonne A ce sont les
donnes d'une base de donn=E9es, c'est les donn=E9es de base. Dans la
colonne B j'ai =E9galement des chiffres qui viennent d'une autre base de
donn=E9es.

j'aimerais mettre sur la m=EAme ligne les m=EAmes chiffres, c'est =E0 dire,
au d=E9part les donn=E9es sont pr=E9sent=E9es ainsi :

colonne A : 132981 - colonne B : 432981
colonne A : 332981 - colonne B : 532981
colonne A : 932981 - colonne B : 732981
colonne A : 432981 - colonne B : 932981
colonne A : 732981 - colonne B : 132981
colonne A : 532981 - colonne B : 332981

etc...

je veux les pr=E9senter de cette mani=E8re :

colonne A : 432981 - colonne B : 432981
colonne A : 532981 - colonne B : 532981
colonne A : 732981 - colonne B : 732981
colonne A : 932981 - colonne B : 932981
colonne A : 132981 - colonne B : 132981
colonne A : 332981 - colonne B : 332981

il est possible que des chiffres d'une colonne ou une autre peuvent ne
pas se trouver dans la colonne d'=E0 c=F4t=E9, mais dans ce cas, il faut
juste qu'il mette cette donn=E9e en rouge...

=E9galement il se peut qu'on retrouve dans la colonne B des donn=E9es =E0
double ou =E0 triple et m=EAme plus, dans ce cas il faut qu'il mette cette
donn=E9e en bleu

pouvez-vous m'aider svp?

merci et =E0 bient=F4t.

6 réponses

Avatar
francois.forcet
Salut à toi

Est il important de respecter l'ordre de la colonne B telle que tu
l'as présentée ???
En d'autre terme doit on laissé l'ordre de la colonne B et rapporter
en colonne A les valeurs identiques à côté de celles colonne B ???
Si tel est le cas si une valeur colonne A n'existe pas en colonne B où
doit on la mettre en colonne A (à la fin) ???

Sinon je te propose d'opérer un tri colonne A puis Colonne B et de
comparer les 2 colonnes ligne par ligne
Celà implique le même nombre de données et un ordre croissant ou
décroissant qui n'a rien à voir avec ta présentation

Dans cette perspective je te propose ce code
Soit Feuil1 colonne A et B les données à traiter :

Range("A1", "A" & Range("A65535").End(xlUp).Row).Sort
Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:lse, Orientation:=xlTopToBottom,
_
DataOption1:=xlSortNormal
Range("B1", "B" & Range("B65535").End(xlUp).Row).Sort
Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:lse, Orientation:=xlTopToBottom,
_
DataOption1:=xlSortNormal
For Each c In Worksheets("Feuil1").Range("A1", "A" &
Range("A65535").End(xlUp).Row)
A = c
B = c.Offset(0, 1)
If c <> c.Offset(0, 1) Then
Range("A" & c.Row, "B" & c.Offset(0, 1).Row).Interior.ColorIndex =
3
End If
If c = c.Offset(1, 0) Then
Range("A" & c.Row, "A" & c.Offset(1, 0).Row).Interior.ColorIndex =
5
End If
If c.Offset(0, 1) = c.Offset(1, 1) Then
Range("B" & c.Row, "B" & c.Offset(1, 0).Row).Interior.ColorIndex =
5
End If
Next

Tu trouveras sur ce lien un exemple :
Feuil2 tes données bruts en Feuil1 le résultat aprés l'éxécution d e la
macro "Compare"

http://www.cijoint.fr/cjlink.php?file=cj200805/cij3dDvmCo.xls.

Fais des essais et dis moi !!!!!
Avatar
ymer.hyseni
On May 24, 10:53 am, wrote:
Salut à toi

Est il important de respecter l'ordre de la colonne B telle que tu
l'as présentée ???
En d'autre terme doit on laissé l'ordre de la colonne B et rapporter
en colonne A les valeurs identiques à côté de celles colonne B ???
Si tel est le cas si une valeur colonne A n'existe pas en colonne B où
doit on la mettre en colonne A (à la fin) ???

Sinon je te propose d'opérer un tri colonne A puis Colonne B et de
comparer les 2 colonnes ligne par ligne
Celà implique le même nombre de données et un ordre croissant ou
décroissant qui n'a rien à voir avec ta présentation

Dans cette perspective je te propose ce code
Soit Feuil1 colonne A et B les données à traiter :

Range("A1", "A" & Range("A65535").End(xlUp).Row).Sort
Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:lse, Orientation:=xlTopToBottom ,
_
DataOption1:=xlSortNormal
Range("B1", "B" & Range("B65535").End(xlUp).Row).Sort
Key1:=Range("B1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:lse, Orientation:=xlTopToBottom ,
_
DataOption1:=xlSortNormal
For Each c In Worksheets("Feuil1").Range("A1", "A" &
Range("A65535").End(xlUp).Row)
A = c
B = c.Offset(0, 1)
If c <> c.Offset(0, 1) Then
Range("A" & c.Row, "B" & c.Offset(0, 1).Row).Interior.ColorIndex =
3
End If
If c = c.Offset(1, 0) Then
Range("A" & c.Row, "A" & c.Offset(1, 0).Row).Interior.ColorIndex =
5
End If
If c.Offset(0, 1) = c.Offset(1, 1) Then
Range("B" & c.Row, "B" & c.Offset(1, 0).Row).Interior.ColorIndex =
5
End If
Next

Tu trouveras sur ce lien un exemple :
Feuil2 tes données bruts en Feuil1 le résultat aprés l'éxécution de la
macro "Compare"

http://www.cijoint.fr/cjlink.php?file=cj200805/cij3dDvmCo.xls.

Fais des essais et dis moi !!!!!


Salut,

merci pour ta réponse, c'est prèsque ce que je veux...

Il faut effectivement trier les deux colonnes.

Si dans la colonne A une donnée n'existe pas, et que dans la colonne B
elle existe, il faut laisser vide une cellule dans la colonne A et
mettre celle qui existe dans la colonne B en rouge.

Egalement pour ca colonne B, si la donnée existe dans la colonne A et
pas dans la B, il fait laisser une cellule vide dans la colonne B et
la mettre en rouge, et continuer.

merci pour ton aide, et à bientôt.

Avatar
francois.forcet
Rebonjours à toi
Ma solution de colorer les données des 2 colonnes divergentes sur une
même ligne n'est elle pas suffisante ????
Laisser un vide revient à rajouter une cellule et décaler les valeurs
suivantes et faire la même chose dans l'autre colonne
Est ce réellement celà que tu souhaites ????
Dis moi !!!!!
Avatar
ymer.hyseni
On May 24, 8:57 pm, wrote:
Rebonjours à toi
Ma solution de colorer les données des 2 colonnes divergentes sur une
même ligne n'est elle pas suffisante ????
Laisser un vide revient à rajouter une cellule et décaler les valeurs
suivantes et faire la même chose dans l'autre colonne
Est ce réellement celà que tu souhaites ????
Dis moi !!!!!


re-salut, oui c'est exactement cela que je veux.

merci beaucoup pour ton aide, et à bientôt.

Avatar
francois.forcet
Rebonjours à toi
Données en colonne A et B
Je te propose un nouveau code non basé sur le tri mais qui rapporte en
colonne A les valeurs identiques en regard de celles colonne B ou qui
les met à la fin de la colonne A si elles n'existent pas en colonne B
Je part du principe que seule la colonne B peux avoir des doublons
Le code colore ensuite les cellules ayant une valeur ne se retrouvant
pas dans la colonne adjacente et les doublons de la colonne B :

Columns("A:A").Cut
Columns("C:C").Activate
ActiveSheet.Paste
For Each c In Worksheets("Feuil1").Range("C1", "C" &
Range("C65535").End(xlUp).Row)
Range("B1").Activate
On Error Resume Next
Range("B1", "B" & Range("B65535").End(xlUp).Row).Find(What:=c,
After:=Range("B1"), LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows,
SearchDirection:=xlNext, _
MatchCase:lse, SearchFormat:lse).Activate
If ActiveCell.Address = Range("B1").Address And ActiveCell <> c
Then
Range("A" & Range("B65535").End(xlUp).Offset(1, 0).Row) = c
Else
Range("A" & ActiveCell.Row) = c
End If
Next
For Each d In Worksheets("Feuil1").Range("A1", "A" &
Range("A65535").End(xlUp).Row)
If d = "" Then
d.Offset(0, 1).Interior.ColorIndex = 3
End If
If d.Offset(0, 1) = "" Then
d.Interior.ColorIndex = 3
End If
If d.Offset(0, 1) = d.Offset(1, 1) And d.Offset(0, 1) <> "" Then
Range("B" & d.Row, "B" & d.Offset(1, 0).Row).Interior.ColorIndex =
5
End If
Next
Columns("C:C").Clear

sur ce lien un fichier avec la macro "Compare2" et ce code

Fais des essais et dis moi !!!!!

http://www.cijoint.fr/cjlink.php?file=cj200805/cij2eSU4L1.xls.
Avatar
ymer.hyseni
On May 25, 10:08 am, wrote:
Rebonjours à toi
Données en colonne A et B
Je te propose un nouveau code non basé sur le tri mais qui rapporte en
colonne A les valeurs identiques en regard de celles colonne B ou qui
les met à la fin de la colonne A si elles n'existent pas en colonne B
Je part du principe que seule la colonne B peux avoir des doublons
Le code colore ensuite les cellules ayant une valeur ne se retrouvant
pas dans la colonne adjacente et les doublons de la colonne B :

Columns("A:A").Cut
Columns("C:C").Activate
ActiveSheet.Paste
For Each c In Worksheets("Feuil1").Range("C1", "C" &
Range("C65535").End(xlUp).Row)
Range("B1").Activate
On Error Resume Next
Range("B1", "B" & Range("B65535").End(xlUp).Row).Find(What:=c,
After:=Range("B1"), LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchOrder:=xlByRows,
SearchDirection:=xlNext, _
MatchCase:lse, SearchFormat:lse).Activate
If ActiveCell.Address = Range("B1").Address And ActiveCell <> c
Then
Range("A" & Range("B65535").End(xlUp).Offset(1, 0).Row) = c
Else
Range("A" & ActiveCell.Row) = c
End If
Next
For Each d In Worksheets("Feuil1").Range("A1", "A" &
Range("A65535").End(xlUp).Row)
If d = "" Then
d.Offset(0, 1).Interior.ColorIndex = 3
End If
If d.Offset(0, 1) = "" Then
d.Interior.ColorIndex = 3
End If
If d.Offset(0, 1) = d.Offset(1, 1) And d.Offset(0, 1) <> "" Then
Range("B" & d.Row, "B" & d.Offset(1, 0).Row).Interior.ColorIndex =
5
End If
Next
Columns("C:C").Clear

sur ce lien un fichier avec la macro "Compare2" et ce code

Fais des essais et dis moi !!!!!

http://www.cijoint.fr/cjlink.php?file=cj200805/cij2eSU4L1.xls.


salut,

c'est excellent, bravo.

merci à toi, et à bientôt.