!!! Formules trop lourdes !!!

F

fabrice

Guest
Re à tout les irréductibles du forum.

Voilà, j'ai des formules qui sont un peu lourdes à gérer. comment puis-je les désactiver pendant que je fais mais calcul initiaux???

Merci de votre réponse
FAb

PS: je ne pense pas avoir été tre claire !!!!
 
V

Vériland

Guest
Bonsoir Fabrice et le forum,

Une !!! Formule trop lourde !!! dis-tu ?...mais laquelle ? où est-elle...ouh ouh ! la formule...ah ben j'l'appelle mais elle ne vient pas...euh les gars vous avez pas vu une formule kekpar...on la cherche...Hi hi hi...

ah ben c'est sur qu'y'a pas foule...y sont tous à la recherche de ta formule...bon ben j'vais les rejoindre...lol

A+ Vériland
 
F

fabrice

Guest
salut Vériland

Ca y est, je l'ais enfin attrapée. a la coquine !!!
=SOMME(SI(MOIS(Donnees!$A$6:$A$9000)=MOIS(A4);Donnees!$I$6:$I$9000))

Le pb vient du fait quelle doit chercher parmi 8760 lignes et deplus, j'en ais 48 comme elle, donc, tu vois la puissance de CPU qu'il me faudrait. Par contre, si je les acive les unes apres les autres, tout ira bien. Le probleme est que je ne sais pas comment les activer les unes après les autres.

Est ce que tu pourrais m'aider maintenant que je l'ai attrapée ;=) ???

Merci de ta réponse.
FAb
 
V

Vériland

Guest
re Fabrice,

Arf!!...lol...j'vois mieux l'apparence de ta formule...bon j'suis pas dans ton programme mais il me semble évident qu'il ait besoin d'un certain temps pour réaliser le calcul...ce que j'comprends pas, c'est pourquoi tu demandes de chercher un résultat sur une base de donnée pour chaque calcul...j'ai comme l'impression que tu te complique un peu la vie là...faire une macro pour ce type de calcul serait p'têt plus simple...enfin simple...lol

Non là y peut y avoir une solution si tu ne souhaites pas que le calcul se fasse systématiquement...car comme tu le dis le Processeur y doit chauffer...

la solution serait :

Outils / Option...onglet calcul...puis tu coches modes de calcul sur ordre...

ainsi le calcul ne se fait que lorsque tu le souhaite...en appuyant simplement sur la touche F9...

Voilà pour moi...

A+ Vériland
 
F

fabrice

Guest
re

Pour la méthode F9, jy est déjà pensé.
S'il n'y a pas d'autre sol, je vais essayé de faire une macro,donc attention les dégats !!!

Juste, si quelqu'un a 1 sol ss macro je suis preneur! ;=)

Merci et je vous tiendrai au courant de mes catastrophes.
FAb
 
V

Vériland

Guest
Re Fabrice,

J'm'attendais un peu à te revoir...lol...il me semble que j'ai annoncé un peu prématurément qu'il était possible de faire ce type de calcul avec une macro...lol...en fait le mot clé pour toi c'est Macro...j'ai oublié qu'il ne fallait pas que j'en parle...car j'ai la nette impression que ce post va finir par sur un fil à rallonge...que dis-je...une bobine...hi hi hi...

pour la solution il est un peu hasardeux de te proposer une macro type...pour cela y faut savoir où on va...et en ce moment on ne peut pas se baser sur =SOMME(SI(MOIS(Donnees!$A$6:$A$9000)=MOIS(A4);Donnees!$I$6:$I$9000))...c'est trop maigre...lol...en même temps je ne voudrais pas te faire de fausse joie et te faire croire que j'en ai le temps...en fait j'suis pas trop dispo pour cela...p'têt que Thierry t'a vu ?...lol

par contre sur une question précise pourquoi pas !

A+ Vériland
 
F

fabrice

Guest
Re,

En fait, je ne pensé pas te prendre ton temps ce soir. Je voulais essayer de faire ma macro tout seul durant le week-end et vous tenir au courant de mes evolutions. Il faut que j'arrive à vous prouver que vos efforts ne sont pas veins!!! (je ne sais pas si ca s'ecrit comme ca!!!)

Bon, on fait comme ca??? Tu peut donc avoir l'esprit tranquille pour quelques jours ;=)

A+
FAb
 
A

andré

Guest
Salut fabrice,

Essaie la solution suivante (je n'ai pas essayé, mais à mon avis cela doit marcher) :

Réserve une case dans ta feuille, par exemple A1.
Fais précéder tes formules par : =SI(A1<>1; "";ta formule), =SI(A1<>2;"";ta formule), et ainsi de suite jusque 48.
Donc, si en A1 tu tapes 1, seules ces formules seront calculées.
Ensuite, par macro, tu places un compteur en A1 qui en augmente la valeur d'une unité jusqu'à 48.

Ce n'est qu'une piste, à toi de la mettre au point.
André.
 
@

@+Thierry

Guest
Bonjour les Amis

Attention, je n'ai même pas essayé de comprendre ce que Fab veut calculer... Mais juste pour automatiser la "Dés-automisation" de calcul d'Excel...

Une solution par Macro consiste à mettre Excel en Mode de calcul manuel...
===> Voir ce Fil où Cyb-Cd à l'air content

Le principe est de faire çà :
Private Sub Workbook_Open()
Application.Calculation = xlManual
End Sub

Entre temps dans chaque macro où il y a besoin de calcul on met l'instruction "Calculate" à la fin : Exemple :

Private Sub CommandButton1_Click()
For i = 4 To 19
For j = 2 To 10
Worksheets("résultats").Cells(i + 1, j).Value = Worksheets("saisie").Cells(i, j).Value
Next j
Next i
Calculate '<============= Comme çà !
End Sub

NB pour Fab (et pour les Belges, merci Celeda !! lol) le code de boucle au-dessus est là comme exemple, c'est juste "Calculate qui est important, INUTILE de copier cette macro !! lol !!!

(Calculate correspond à faire F9)

Par contre il ne faut pas oublier de remettre XL en mode auto à la sortie comme çà :
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Calculation = xlAutomatic
End Sub

Voilà si celà peut convenir dans ce cas particulier... Pour cette formule je n'en sais strictement rien ...

Bonne Journée Youpiiiiii => "T. G. F. "

@+Thierry
 
A

andré

Guest
Reaslut,

SI(A1<>1;"";ta formule) : si A1 est différent de 1, rien ne se passe, sinon ta formule se calcule, en d'autres termes, si A1 = 1, seules les formules contenant la condition A1<>1 seront calculées.
Idem pour SI(A1<>2;"";ta formule) ne calculera que les formules que si A1 contient le chiffre 2, et ainsi de suite.
Donc, si après chaque calcul, tu augmentes la valeur de A1 d'une unité, tes 48 formules se calculeront les unes après les autres.
A toi de récupérer les résultats à chaque fois, par exemple par un Copier / Coller Valeur dans une nouvelle colonne.
Tu peux réaliser l'ensemble par macro (même enregistrée).

André.
 

Discussions similaires

Statistiques des forums

Discussions
314 645
Messages
2 111 530
Membres
111 190
dernier inscrit
clmtj