Accelerer l'execution d'une application d'un fichier assez lourd

benjamin -  
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour les amis,
J'ai une base excel très lourde à partir de laquelle j'ai effectué
une programmation VBA pour l'exécution automatique de certaines taches.
Mon problème est que, compte tenu de la taille de ma base de donnée excel, l'exécution prend assez de temps. (Un autre soucis est que j'utilise pour le moment un ordinateur portable a 4 processeurs. Or l'application fonctionnera sur un ordinateur fixe a capacité relativement tres faible).
Aidez moi a trouver un programme VBA pouvant accélérer l'exécution de mon application.


Merci d'avance pour vos reponses!!!
A voir également:

4 réponses

f894009 Messages postés 17277 Date d'inscription   Statut Membre Dernière intervention   1 713
 
Bonjour,

Il faudrait mettre votre fichier a dispo, en modifiant les donnees sensibles, pour que nous puissions evaluer la chose !!!!

click sur le ien suivant: https://www.cjoint.com/

Ne pas oublier e copier/coller le lien creer dans votre prochain message
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

Sur les tableaux volumineux style "liste de données", il vaut mieux utiliser Access et l'interroger, Excel n'étant pas un gestionnaire de bases de données
lire à ce sulet:
https://support.microsoft.com/fr-fr/office/utiliser-access-ou-excel-pour-g%c3%a9rer-vos-donn%c3%a9es-09576147-47d1-4c6f-9312-e825227fcaea?ocmsassetid=ha010210195&correlationid=d29af1f8-4e74-4502-b994-3b1f030cc1ff&ui=fr-fr&rs=fr-fr&ad=fr#BM2


si tu n'a pas access,
bien sûr ,utiliser le thread au départ:
application.screenupdating=false
tes codes VBA doivent utiliser des "variables- tableaux" qui reduisent considérablement le temps (env.15 à 30 fois)
pour étudier les variables -tableaux, un tuto:
https://silkyroad.developpez.com/vba/tableaux/

Au cas où:
proscrire au maximum possible les select, selection, copy-paste....

Michel
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
au besoin,
mettre UN EXTRAIT du classeur sans données confidentielles en pièce jointe sur
https://www.cjoint.com/
puis copier l'adresse du lien et la coller dans le message de réponse
0
benjamin
 
Après avoir essayé Application.screenupdating=False '(au debut)
Application.screenupdating=False (à la fin)
je parvient a réduire le temps d'execution de 30%.
Par ailleurs, je soumettrai la version finale à l'appreciation des autres. S'ils trouvent le temps d'execution assez long, je ferai l'effort de vous envoyer le classeur excel sur le lien indiqué pour béneficier de votre assistance technique.
Merci les amis!!!
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Application.screenupdating=False
inutile si tu rends la main à la fin de la macro...

vous envoyer le classeur excel
m'envoyer UN EXTRAIT: au delà d'un méga , je zappe
0
benjamin
 
Merci Michel_m de t'être préoccupé a mon problème. J'attends l'avis des personnes à qui je soumettrai l'appréciation du travail. Si elles jugent utile d'accélérer davantage, je t'enverrai le classeur.
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour Polux

Tout à fait, je te plussoie.

Bon WE
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Merci Michel,

Bon week end à toi aussi et bonnes fêtes de fin d'année.

;0)
0
Polux31 Messages postés 6917 Date d'inscription   Statut Membre Dernière intervention   1 204
 
Bonjour,

Comme l'a dit michel_m (que je salue), Excel n'est pas un gestionnaire de données et bien qu'il puisse le faire sous certaines conditions, il n'en reste pas moins limité.

Avant de se lancer tête baissée dans le code, il faut d'abord savoir où l'on va et ce que l'on veut faire. Beaucoup rechigne à le faire mais il est indispensable de se faire un petit cahier des charges et d'écrire toutes les fonctionnalités attendues.

Regarde ma signature. Il en est de même dans le développement.

J'espère que ton code qui traite les données n'est pas dans ton méga fichier qui sert de base ... parce qu'en cas de plantage du fichier, tu perds les données et le code !!! C'est serait dommage ...
-1