Fichiers excel trop lents, peut on les accélérer ?

Le
Michel Angelosanto
Bonjour,

j'ai toujours ce problème de fichiers trop lents.
Pour que vous puissiez constater et certainement, avec un oil neuf, trouver
des astuces pour l'accélérer, je vous ai joint un exemple de fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cijiMz45mO.zip

Merci d'avance pour votre aide et bon week-end

--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Daniel.C
Le #5428991
Bonjour.
Mets ton classeur en calcul manuel, tu vas gagner énormément de temps.
Cordialement.
Daniel
"Michel Angelosanto" %
Bonjour,

j'ai toujours ce problème de fichiers trop lents.
Pour que vous puissiez constater et certainement, avec un oil neuf,
trouver des astuces pour l'accélérer, je vous ai joint un exemple de
fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cijiMz45mO.zip

Merci d'avance pour votre aide et bon week-end

--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/


Michel Angelosanto
Le #5428971
C'est ce que je fais dans les macros pendant le traitement après un choix
dans les combobox.
Si je ne repasse pas en automatique, les utilisateurs ne penseront pas à
faire les calculs en cas de modification.
De plus, il leur arrive de se retrouver en calcul manuel quand ils ouvrent
leur propre classeur et ils se demandent pourquoi les calculs sont faux.

"Daniel.C" news:
Bonjour.
Mets ton classeur en calcul manuel, tu vas gagner énormément de temps.
Cordialement.
Daniel
"Michel Angelosanto" %
Bonjour,

j'ai toujours ce problème de fichiers trop lents.
Pour que vous puissiez constater et certainement, avec un oil neuf,
trouver des astuces pour l'accélérer, je vous ai joint un exemple de
fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cijiMz45mO.zip

Merci d'avance pour votre aide et bon week-end

--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/





--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/


Michel Angelosanto
Le #5428951
En fait le ficher que j'ai mis en ligne est en calcul manuel, mais il faut
le remettre en auto, sinon quand on fait une sélection, le tableau ne se
remet pas à jour.

"Daniel.C" news:
Bonjour.
Mets ton classeur en calcul manuel, tu vas gagner énormément de temps.
Cordialement.
Daniel
"Michel Angelosanto" %
Bonjour,

j'ai toujours ce problème de fichiers trop lents.
Pour que vous puissiez constater et certainement, avec un oil neuf,
trouver des astuces pour l'accélérer, je vous ai joint un exemple de
fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cijiMz45mO.zip

Merci d'avance pour votre aide et bon week-end

--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/





--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/


JB
Le #5428901
Bonjour,

On peut ne pas écrire de formule mais faire du calcul dynamique à
chaque modif de cellule. C'est évidement + compliqué mais on économise
la place prise par les formules et le temps de recalcul de toute la
feuille.
Cela peut être intéressant lorsque des formules utilisent des champ
importants (Rechechev e.g.)

http://boisgontierjacques.free.fr/pages_site/evenements.htm#Calculdynamique

JB
http://boisgontierjacques.free.fr/


On 29 mar, 17:01, "Michel Angelosanto"
En fait le ficher que j'ai mis en ligne est en calcul manuel, mais il faut
le remettre en auto, sinon quand on fait une sélection, le tableau ne se
remet pas à jour.

"Daniel.C"




Bonjour.
Mets ton classeur en calcul manuel, tu vas gagner énormément de temp s.
Cordialement.
Daniel
"Michel Angelosanto" %
Bonjour,

j'ai toujours ce problème de fichiers trop lents.
Pour que vous puissiez constater et certainement, avec un oil neuf,
trouver des astuces pour l'accélérer, je vous ai joint un exemple d e
fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cijiMz45mO.zip

Merci d'avance pour votre aide et bon week-end

--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/



--
Michel Angelosanto, Bordeauxhttp://angelosa.free.fr/- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -




Michel Angelosanto
Le #5428831
J'ai fait quelques améliorations selon les conseils mais le problème
persiste. Le nouveau fichier est ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cij2v7DaUY.zip
J'ai remonté le graphe que j'avais descendu pour laisser voir ce qui est
dessous.
Au début, j'ai fait les calculs en vba mais c'était encore plus long.
J'ai fait le test suivant:
je mets le calcul en manuel, je fais une sélection puis je passe en calcul
automatique. La feuille se met a jour en environ 30 secondes.
je fais le 2e test, je reste en automatique et je refais une sélection, le
calcul dure le même temps mais la boite de sélection reste ouverte encore
plusieurs minutes avant que le feuille se mette à jour. Que fait elle
pendant tout ce temps ?


"JB" news:
Bonjour,

On peut ne pas écrire de formule mais faire du calcul dynamique à
chaque modif de cellule. C'est évidement + compliqué mais on économise
la place prise par les formules et le temps de recalcul de toute la
feuille.
Cela peut être intéressant lorsque des formules utilisent des champ
importants (Rechechev e.g.)

http://boisgontierjacques.free.fr/pages_site/evenements.htm#Calculdynamique

JB
http://boisgontierjacques.free.fr/


On 29 mar, 17:01, "Michel Angelosanto"
En fait le ficher que j'ai mis en ligne est en calcul manuel, mais il faut
le remettre en auto, sinon quand on fait une sélection, le tableau ne se
remet pas à jour.

"Daniel.C" denews:





Bonjour.
Mets ton classeur en calcul manuel, tu vas gagner énormément de temps.
Cordialement.
Daniel
"Michel Angelosanto" %
Bonjour,

j'ai toujours ce problème de fichiers trop lents.
Pour que vous puissiez constater et certainement, avec un oil neuf,
trouver des astuces pour l'accélérer, je vous ai joint un exemple de
fichier ici:
http://www.cijoint.fr/cjlink.php?file=cj200803/cijiMz45mO.zip

Merci d'avance pour votre aide et bon week-end

--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/



--
Michel Angelosanto, Bordeauxhttp://angelosa.free.fr/- Masquer le texte des
messages précédents -

- Afficher le texte des messages précédents -



--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/



PMO
Le #5428501
Bonjour,

Je remarque des anomalies dans votre code
suceptibles de le ralentir.

A tout hasard essayez les modifications suivantes

1) AU LIEU DE
Dim deb, maxl, t, t1, gr, en, si, oc As Integer
Dim siège, f, nom As String

FAIRE

Dim deb As Integer, maxl As Integer, t As Integer, etc ...
Dim siège As String, f As String, nom As String

Idem pour
Dim t, t1, maxl, minl, lig, niveau, gr As Integer
Dim f, p, cr As String

Idem pour
Dim t, t1, cat, maxl As Integer
Dim f As String

A contrario du langage C le Basic interprète comme Variant
les variables qui ne sont pas explicitement typées.

2) AU LIEU DE
Function fand(n1, n2, n3, n4 As Long)

FAIRE
Function fand(n1&, n2&, n3&, n4&) As Long

On type, de manière explicites, tous les arguments
D'autre part, on type explicitement la valeur de retour
(même problème que le paragraphe 1)

Cela devrait faire gagner quelques secondes.
Est-ce le cas ?

Cordialement.

PMO
Patrick Morange
Michel Angelosanto
Le #5425831
Merci pour tes précieux conseils.
Habitué au power basic (sous dos), j'étais persuadé que c'était pareil et
que toutes les variables listées étaient du type indiqué.
Je modifie en conséquence tous mes fichiers.

"PMO" <patrickPOINTmorangeAROBASElapostePOINTnet> a écrit dans le message de
news:
Bonjour,

Je remarque des anomalies dans votre code
suceptibles de le ralentir.

A tout hasard essayez les modifications suivantes

1) AU LIEU DE
Dim deb, maxl, t, t1, gr, en, si, oc As Integer
Dim siège, f, nom As String

FAIRE

Dim deb As Integer, maxl As Integer, t As Integer, etc ...
Dim siège As String, f As String, nom As String

Idem pour
Dim t, t1, maxl, minl, lig, niveau, gr As Integer
Dim f, p, cr As String

Idem pour
Dim t, t1, cat, maxl As Integer
Dim f As String

A contrario du langage C le Basic interprète comme Variant
les variables qui ne sont pas explicitement typées.

2) AU LIEU DE
Function fand(n1, n2, n3, n4 As Long)

FAIRE
Function fand(n1&, n2&, n3&, n4&) As Long

On type, de manière explicites, tous les arguments
D'autre part, on type explicitement la valeur de retour
(même problème que le paragraphe 1)

Cela devrait faire gagner quelques secondes.
Est-ce le cas ?

Cordialement.

PMO
Patrick Morange




--
Michel Angelosanto, Bordeaux
http://angelosa.free.fr/

Publicité
Poster une réponse
Anonyme