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

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

  • Initiateur de la discussion Initiateur de la discussion Peter_B
  • 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 !

P

Peter_B

Guest
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 modification par un modérateur:
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
 
Re : Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents


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

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
 
Re : Comparaison de 2 colonnes de tableaux situées dans 2 onglets différents


Merci Gael, c'etait une belle erreur d'innatention =s
 
- 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

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…