Problème de vitesse d'exécution

Bonjour, le fichier ci-joint contient un Menu "Ajout opérateur" qui permet d'insérer un ou plusieurs tableaux qui correspondent à un titulaire ou à un intérimaire. Le problème est que l'exécution est bien trop lente lorsqu'on exécute le code sur de nombreuses semaines et évidemment plus on ajoute de personnes différentes, plus le temps d'exécution augmente...

Sachant que certaines feuilles devraient contenir à l'avenir jusqu'à 30 000 lignes, existe t-il un moyen ,qui ne modifie pas trop la structure du code, de réduire significativement le temps d'exécution ?

Bonjour PeaWix

Le moins qu'on puisse dire c'est que c'est extrêmement looonnnnggg effectivement

Ceci dit, vouloir traiter ce genre de planning qui pourrait contenir 30.000 lignes avec Excel,
je crois que vous allez au devant de gros ennuis.

Pourquoi ne pas acheter un logiciel prévu pour ça ?

A+

L'entreprise dans laquelle je suis en stage n'utilise que Excel visiblement...

Le temps d'exécution a considérablement augmenté lorsque j'ai inclus une boucle For dans la boucle While (pour calculer les totaux au fur et à mesure que les tableaux apparaissent). Il n'y a pas moyen d'optimiser au moins ça ?

Ou bien si ce n'est vraiment pas possible, comment je pourrais faire pour garder un fichier similaire ? (Quitte à en modifier tout le fonctionnement)

Re,

Perso, je ne m'aventurerai pas dans ce sujet.

Mais d'autres le feront certainement

Pas de soucis, merci quand même

bonjour,

a mon avis, il faut ajouter un tableau structuré avec tous les données, une ligne par personne par semaine (stagaire ou autre). De cette manière on peut faire tout sorte d'autres demandes avec par exemple des TCDs, des graphs, ... .

La partie "livre de coloriage" (votre feuille IMPREGNATION) est réalisable avec un tel TCD.

Bonjour BsAlv, je ne suis pas sûr d'avoir compris, il faudrait donc rajouter une nouvelle feuille contenant un tableau gigantesque dont chaque ligne correspond à 1 personne pour une semaine donnée avec toutes les infos (heures sup, etc) ? Et ensuite je pourrais insérer ces infos dans les tableaux que je pourrais faire apparaître comme dans le fichier initial ? Le temps d'exécution sera vraiment plus faible ou restera t-il tout de même conséquent ?

bonjour,

le temps d'éxecution pour ajouter une personne pendant 52 semaines est +- 10 minutes et en même temps le fichier est devenu quelques MB en size.

Un estimation approximative, si je le fais dans un tableau structuré (+- 60 colonnes), le temps d'éxecution sera 100 msec pour rassembler les données et <2 sec pour écrire cela dans ce tableau.

Donc le reste des 10 minutes, c'est ce "livre de coloriage", donc je ne sais pas le but. Vous ferrez un planning là-dessus ?

Je vois, mais lorsque les données seront utilisées pour remplir de nouveaux tableaux dans des semaines données, ces mêmes tableaux devront tout de même être insérés dans la feuille imprégnation avant de recevoir les données, ce qui revient au même non ? Après le problème de vitesse d'exécution vient peut être de l'ensemble des fonctions qui s'appellent mutuellement. Actuellement je mets environ 1m30 pour créer les 52 premiers tableaux pour l'année. J'aimerais passer sous la barre des 10 s max pour les exécutions les plus lentes mais cela me parait utopique.

La feuille imprégnation, comme les autres, permet de recenser l'ensemble du personnel d'un secteur (l'imprégnation en est un par exemple) dans chaque semaine afin de compter les heures de travail, congé, etc. Le but étant de créer un fichier assez modulable qui puisse être copié et appliqué à l'ensemble des postes de l'entreprise. Mais cela créera sans doutes des fichiers trop lourds car pouvant contenir jusqu'à 30000 lignes et ce sur plusieurs feuilles.

re,

votre présentation est difficile à manipuler. Supposons qu'une personne ne fait un tâche (traivail, formation, délégation, ...) par jour et au max 250 jours par année.

Alors +1.000.000 lignes par feuille /250 = 5.000 personnes * année, facile à manipuler pour de graph, des TCD, etc. Tout en quelque secondes.

re,

see attachment,

pour vous donner un idée, tous les données sont comme dans la feuille "IMP" colonnes A-J

Puis on peut créer toute sortes de TCD comme colonnes M-T avec des "slicers" (liste deroulant).

Il faut encore changer beaucoup, mais c'est le début.

Bonjour, merci d'avoir pris le temps de réaliser un exemple de votre idée, je vais essayer d'approfondir cette piste

Rechercher des sujets similaires à "probleme vitesse execution"