Comparer des cellules
papacricri64
-
papacricri64 -
papacricri64 -
Bonjour,
je suis novice en vba et je souhaiterai comparer deux cellules dans des colonnes.
Je m'explique:
J'ai des données dans les colonnes de A à I dans la feuille 1
Dans la colonne A j'ai une cellule de type Axx xxxx et colonne I une date.Chaque mois j'effectue une extraction pour voir l'état d'avancement qui se trouve en feuille 2 avec toujours le même principe,même nombre de colonne et même données.
Mon but est de comparer la date de la colonne I (feuille 2) par rapport à Axx xxxx avec la feuille 1 et mesurer l'écart entre les deux dates par rapport à Axx xxxx et copier toutes les données sur la feuille 3.
Merci d'avance à la personne qui souhaite m'aider.
Christophe
je suis novice en vba et je souhaiterai comparer deux cellules dans des colonnes.
Je m'explique:
J'ai des données dans les colonnes de A à I dans la feuille 1
Dans la colonne A j'ai une cellule de type Axx xxxx et colonne I une date.Chaque mois j'effectue une extraction pour voir l'état d'avancement qui se trouve en feuille 2 avec toujours le même principe,même nombre de colonne et même données.
Mon but est de comparer la date de la colonne I (feuille 2) par rapport à Axx xxxx avec la feuille 1 et mesurer l'écart entre les deux dates par rapport à Axx xxxx et copier toutes les données sur la feuille 3.
Merci d'avance à la personne qui souhaite m'aider.
Christophe
A voir également:
- Comparer des cellules
- Verrouiller des cellules excel - Guide
- Excel additionner des cellules - Guide
- Comparer prix amazon - Accueil - Commerce
- Fusionner deux cellules excel - Guide
- Prix Amazon : comment suivre les évolutions de tarifs - Guide
1 réponse
Résumé de la discussion
Comparer des lignes entre feuille 1 et feuille 2 via les identifiants en colonne A et les dates en colonne I, en utilisant VBA, puis copier les résultats sur feuille 3, est le problème posé. Plusieurs interventions ont proposé une macro VBA qui croise les lignes selon A et compare les dates en I, puis colle le résultat sur feuille 3. Dans les exemples, la macro croise les lignes selon A et compare les dates en I, puis écrit l'écart et calcule les jours ouvrés via une fonction associée. En complément, il est conseillé de tester le code sur un fichier de test et de sécuriser les opérations d'écriture pour éviter d'écraser les données existantes.
la date est en colonne I et la donnée Axxx xxxx est dans la colonne A idem sur feuille 1 et 2
ex:
Feuille 1:
colonne A:Axxx xxxx ,de B à H j'ai d'autres données, et en I, la date.
Feuille 2 idem feuille 1.
En espérant que je me suis bien fait comprendre.
Merci encore!!
Christophe.
Je vous propose un code :
Sub COMPARATIF()
Dim DLig As Long, DLig2 As Long DLig = Sheets(1).Range("A2").End(xlDown).Row 'Si les données à comparer commencent en A2 de la feuille 1 DLig2 = Sheets(2).Range("A2").End(xlDown).Row 'Si les données à comparer commencent en A2 de la feuille 2 ' boucle sur lignes en Feuil 1 et sur lignes en feuil2 For n = 2 To DLig 'si les données à comparer commencent en ligne 2 feuille 1 For t = 2 To DLig2 'si les données à comparer commencent en ligne 2 feuille 2 If CStr(Sheets(1).Range("A" & n).Value) = CStr(Sheets(2).Range("A" & t).Value) Then If CDate(Sheets(1).Range("I" & n)) <> If CDate(Sheets(1).Range("I" & t)) x = x + 1 For k = 1 To 9 Sheets(3).Cells(x, k) = Sheets(1).Cells(t, k) Next Sheets(3).Range("J" & x) = "Ecart de date" Sheets(3).Range("K" & x) = CDate(Sheets(1).Range("I" & n)) - CDate(Sheets(2).Range("I" & t)) End If End If Next t Next n End SubCe code récapitule en feuille 3 les lignes dont les dates ne sont pas les mêmes et fait la différence. Je sais pas si c'est ce que vous vouliez.
Cordialement.
merci encore pour votre aide
Ci-après le problème!!
If CDate(bdd_xls.Range("I" & n)) <> If CDate(Bilan.Range("I" & t))