Bonjour le forum,
Après de nombreuses recherches laborieuses, je me tourne vers vous car je suis bloquée sur un code...
Je souhaite comparer en VBA 2 tableaux non structurés. Il y a une feuille "Depart" et une feuille "Arrivee". Je souhaite faire apparaître en jaune dans la feuille d'arrivée les lignes et/ou colonnes ajoutées (pour les supprimées, un MsgBox) et/ou les éléments de l'intérieur du tableaux modifiés.
Le raisonnement de mon algorithme est le suivant :
1-Comparaison du nombre de colonnes/lignes pour voir lesquelles ont été ajoutées/supprimées. Des MsgBox/cases en jaune attestent du résultat au fur et à mesure des recherches.->OK
2-Comparaison de l'intérieur du tableau pour voir si le contenu de certaines cellules a été modifié. C'est là où je bloque. Je cherche le point commun entre les 2 tableaux : le numéro de dossier (1è colonne) et je compare ensuite les 2 lignes. Ces 2 lignes n'ont pas forcément le même numéro (index)!
Je bloque au moment de trouver le numéro de ligne, où le message "Incompatibilité de type" apparaît, car la variable NumLig_Dossier semble de type String (On le voit lorsque je la fait apparaître dans une MsgBox) alors que c'est un index, ce devrait être un numéro de ligne ! Auriez-vous une idée ?
Vous trouverez en pièce jointe un fichier de modèle, où j'ai commenté au maximum.
Merci pour vos lumières
Après de nombreuses recherches laborieuses, je me tourne vers vous car je suis bloquée sur un code...
Je souhaite comparer en VBA 2 tableaux non structurés. Il y a une feuille "Depart" et une feuille "Arrivee". Je souhaite faire apparaître en jaune dans la feuille d'arrivée les lignes et/ou colonnes ajoutées (pour les supprimées, un MsgBox) et/ou les éléments de l'intérieur du tableaux modifiés.
Le raisonnement de mon algorithme est le suivant :
1-Comparaison du nombre de colonnes/lignes pour voir lesquelles ont été ajoutées/supprimées. Des MsgBox/cases en jaune attestent du résultat au fur et à mesure des recherches.->OK
2-Comparaison de l'intérieur du tableau pour voir si le contenu de certaines cellules a été modifié. C'est là où je bloque. Je cherche le point commun entre les 2 tableaux : le numéro de dossier (1è colonne) et je compare ensuite les 2 lignes. Ces 2 lignes n'ont pas forcément le même numéro (index)!
Je bloque au moment de trouver le numéro de ligne, où le message "Incompatibilité de type" apparaît, car la variable NumLig_Dossier semble de type String (On le voit lorsque je la fait apparaître dans une MsgBox) alors que c'est un index, ce devrait être un numéro de ligne ! Auriez-vous une idée ?
VB:
NumLig_Dossier = Application.Match(ws_D.Cells(lig_D, 1), ws_A.Range("A:A"), 0).Index
Vous trouverez en pièce jointe un fichier de modèle, où j'ai commenté au maximum.
Merci pour vos lumières