Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents

Peter_B

XLDnaute Nouveau
Résolu: Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents

Bonjour,

J'ai trouvé pas mal de problèmes similaires sur ce forum mais hélàs aucune réponse.

Voici mon soucis, j'ai 2 onglets :
- Adresse
- Planification

Je souhaite comparé la colonne C de l'onglet "adresse" (de 201 lignes) avec la colonne C de l'onglet "Planification"(de 270 lignes).

Ces colonnes contiennent des numéros de contrat. Des que le numero est identique (ex: la case 3C "adresse" = la case 239C "Planification),
je veux que la case 239AD "planification" soit copié dans la case 3L "adresse".

j'ai utilisé la macro suivante qui ne fonctionne pas ...

Sub Nombre_GE()

i = 2
j = 3

For i = 2 To 201
For j = 3 To 270

If Sheets("adresse").Cells(i, "c") = Sheets("Planification").Cells(j, "c") Then
Sheets("adresse").Cells(i, "l") = Sheets("Planification").Cells(i, "ad")

End If
Next j
Next i

End Sub

je ne sais pas si j'ai été tres clair ...

En tout cas, j'espere que vous pourrez m'aider .

Merci d'avance
 
Dernière édition:

Gael

XLDnaute Barbatruc
Re : Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents

Bonsoir Peter_B, bonsoir Renauder,

Effectivement, ce n'est pas très clair. Cependant dans le code de ta macro, il y a quelque chose d'important qui cloche et peut-être que tout fonctionnera bien après.

Lorsque tu utilises cells(x,y) x et y sont des valeurs numériques. tu dois mettre le n° de colonne correspondant à la lettre ce qui donne:

Code:
Sub Nombre_GE()
i = 2
j = 3
For i = 2 To 201
For j = 3 To 270
If Sheets("adresse").Cells(i, 3) = Sheets("Planification").Cells(j, 3) Then
Sheets("adresse").Cells(i, 12) = Sheets("Planification").Cells(i, 30)
End If
Next j
Next i
End Sub

Essaye et si cale ne marche pas, envoie un exemple.

@+

Gael
 

Peter_B

XLDnaute Nouveau
Re : Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents

Bonsoir Peter_B, bonsoir Renauder,

Effectivement, ce n'est pas très clair. Cependant dans le code de ta macro, il y a quelque chose d'important qui cloche et peut-être que tout fonctionnera bien après.

Lorsque tu utilises cells(x,y) x et y sont des valeurs numériques. tu dois mettre le n° de colonne correspondant à la lettre ce qui donne:

Code:
Sub Nombre_GE()
i = 2
j = 3
For i = 2 To 201
For j = 3 To 270
If Sheets("adresse").Cells(i, 3) = Sheets("Planification").Cells(j, 3) Then
Sheets("adresse").Cells(i, 12) = Sheets("Planification").Cells(i, 30)
End If
Next j
Next i
End Sub

Essaye et si cale ne marche pas, envoie un exemple.

@+

Gael

Bonjour,

Gael, j'ai essayé ton code mais il ne fonctionne pas. Ma macro comprend lorsque je met les lettres des colonnes car lorsque je la lance, des informations apparaissent dans les colonnes souhaitées.

Voici ci-joint un fichier simplifié avec ma macro.

Vous trouverez dans l'onglet "resultat", le resultat que j'obtiens avec ma macro et celui que je souhaiterais obtenir.

J'ai préféré vous envoyer ce fichier car celui d'origine contenait trop de colonnes inutiles.

Merci d'avance
 

Pièces jointes

  • Macro Peter_B.xls
    36 KB · Affichages: 116

Gael

XLDnaute Barbatruc
Re : Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents

Bonjour à tous,

Effectivement, pour que ça marche, il faut bien sûr mettre "j" et non pas "i" dans l'instruction:

Code:
Sheets("adresse").Cells(i, 12) = Sheets("Planification").Cells([COLOR=red]j[/COLOR], 30)

puisque tu viens de vérifier dasn l'instruction précédente que c'est la ligne "j" qui est égale au numéro de contrat.

En tous cas, j'ai appris un truc car je ne savais pas que l'on pouvais mettre la lettre de la colonne dans l'instruction "Cells()". Je ferai quelques essais.

@+

Gael
 

Peter_B

XLDnaute Nouveau
Re : Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents

Bonjour à tous,

Effectivement, pour que ça marche, il faut bien sûr mettre "j" et non pas "i" dans l'instruction:

Code:
Sheets("adresse").Cells(i, 12) = Sheets("Planification").Cells([COLOR=red]j[/COLOR], 30)

puisque tu viens de vérifier dasn l'instruction précédente que c'est la ligne "j" qui est égale au numéro de contrat.

En tous cas, j'ai appris un truc car je ne savais pas que l'on pouvais mettre la lettre de la colonne dans l'instruction "Cells()". Je ferai quelques essais.

@+

Gael

Merci Gael, c'etait une belle erreur d'innatention =s
 

Discussions similaires

Statistiques des forums

Discussions
312 502
Messages
2 089 049
Membres
104 012
dernier inscrit
baffyt2