Bonjour,
J’éprouve des difficultés dans la gestion des occurrences de la même «*valeur*».
Concrétement, j’ai un fichier base.csv dont les «*colonnes*» sont séparées par des «*;*». La structure du fichier est ainsi :
JJ-MM-AAAA_HH-MM-SS;AnnéeDeLaRealisation;ID_Produit;CA_Realise;
Exemple d’une ligne :
25-03-2015_19-00-01;2014;AspirateurABC;10000;
Le problème : il pourrait y avoir plusieurs lignes se rapportant au CA de l’aspirateurABC en 2014. Le CA pourrait être pour une ligne 10000 l’autre 13000, une autre 11000… Il me faut donc garder la ligne correspondant à l’information la plus récente. En effet, pour chaque occurrence, la première «*colonne*» JJ-MM-AAAA_HH-MM-SS est forcément différente.
Je sollicite votre aide car je ne sais pas comment coder en VBA :
Ouvrir le fichier, prendre la première ligne, chercher s’il y a une autre occurence de celle-ci (en se basant sur l’ID_Produit ET l’AnnééDeLaRealisation), s’il n’y en a pas passer à la ligne suivante, s’il y a d’autres occurrences déterminer la plus récente en se basant sur le champ JJ-MM-AAAA_HH-MM-SS et supprimer les lignes/occurences les plus anciennes puis passer à la ligne suivante, enregistrer et fermer une fois la boucle terminée jusqu’à la fin du fichier.
Je précise que pour déterminer l’occurrence la plus récente il faudrait comparer successivement : AAAA si pareil > MM si pareil > JJ si pareil > HH si pareil > MM (les minutes cette fois) si pareil > SS. A chaque étape, trouver une différence permet de déterminer la plus récente.
Dernière précisions : il peut y avoir plus de deux occurrences…
J’espére avoir été assez clair…
En vous remerciant,
Kramnik
Partager