Vbscript - Tri et comptage de cellules

Vbscript - Tri et comptage de cellules - VB/VBA/VBS - Programmation

Marsh Posté le 05-03-2010 à 19:45:27    

Salut a tous.
 
J'essaie d'automatiser le tri d'un fichier excel de la forme suivante :
 


toto 2010
toto 2010
tutu 2007
toto 2008
tutu 2009


 
Ce que je souhaite obtenir, c'est quelque chose du genre
 
 


Nom 2007 2008 2009 2010
toto 0 1 0 2
tutu 1 0 1 0


 
C'est fait via un script vbscript.
 
En bon gros bourrin, je me suis fixé l'algo suivant pour le moment :
 
Tri de la feuille par ordre alphabétique selon la colonne "Nom"
Lecture de chaque ligne, et affectation du nombre d'occurences dans un tableau fixe contenant les années susceptibles d'apparaitre dans le fichier
Quand le nom ligne n'est pas le meme que celui de la ligne précédente, c'est que le comptage est fini pour le nom en question.
 
Ca marche, mais ce n'est pas extensible et peut être pas optimisé.
 
Ma question se porte donc sur les points suivants :
 
- Comment architecturer mon truc pour pouvoir construire la liste des années dynamiquement ?
- Y aurait il des fonctions dans les objets Excel qui permettraient éventuellement de faciliter une partie des opérations ?


Message édité par ccp6128 le 05-03-2010 à 19:46:04
Reply

Marsh Posté le 05-03-2010 à 19:45:27   

Reply

Marsh Posté le 12-03-2010 à 12:08:27    

Bonjour
 
Faire un tableau croisé dynamique sous excel, faire un script d'export du tableau croisé dynamique...?
A mon avis, c'est ce qu'il y a de plus simple...!
 
Ton tableau, avec le tableau croisé dynamique
http://dje69r.free.fr/ccp6128.jpg
 
Si tu viens saisir des données, il suffit d'actualiser le TCD pour que les nouvelles colonnes ET lignes apparaissent
http://dje69r.free.fr/ccp6128-2.jpg
 
Ensuite ton script vient actualiser le tableau, et sélectionne le tableau pour le copier. Ensuite tu le colles/fais ce que tu en veux ou tu veux
 
Cordialement


Message édité par SuppotDeSaTante le 12-03-2010 à 12:19:27

---------------
Soyez malin, louez entre voisins !
Reply

Marsh Posté le 12-03-2010 à 14:36:29    

En connaissant le bon terme, ca va mieux.
 
Merci, j'ai pu grandement simplifier mon script. Problème résolu.

Reply

Marsh Posté le 12-03-2010 à 23:33:15    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed