Dans quel orde Excel réalise les formules des différentes cellules?

jbf

XLDnaute Nouveau
Bonjour à tous,

J'aimerais savoir dans quel ordre Excel 2007 calcule les formules des différentes cellules?

Par exemple, j'ai 20 colonnes et 3000 lignes avec dans chaque cellule des formules appelant des résultats présents dans d'autres fichiers Excel.

En colonne A j'ai une coordonné géographique.
En colonne B je fais une RECHERCHEV() pour vérifier si la coordonnée géographique de la colonne A se trouve dans le fichier X ou Y ou Z.
Si la coordonnée se trouve dans le fichier X alors en colonne B la formule affiche X etc.

Ma question de l'ordre de calcul des formules intervient à partir de la colonne C dans laquelle s'affiche le nom du lieu correspondant à la coordonnée géographique en colonne A.

Faut-il en colonne C que je fasse la même formule que la colonne B, à savoir RECHERCHEV() dans les trois fichiers Excel distincts.

OU ALORS : dois-je préférer faire en colonne C un SI(B1="X";rechercherv(dans le fichier X);""). Cela permettrait d'alléger les sollicitations d'Excel qui n'aurait pas besoin d'aller d'abord interroger les 3 fichiers X, Y ou Z mais d'aller directement interroger le bon.

Pour cela j'aimerais savoir dans quel ordre Excel réalise les formules.

Est-ce que Excel réalise d'abord les formules de la colonne A de A1 jusqu'à A3000 ou par ligne de A1 à T1? ou tout d'un seul coup?

Je pose cette question car mes formules sont très lourdes avec des SI en pagaille, des RECHERCHEV, des ESTERREUR des CONCATENER etc.

Donc si je peux évider à Excel de mouliner pour "rien" ça pourrait-être pas mal! ;)

Merci pour vos éventuelles réponses.

JBF
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Dans quel orde Excel réalise les formules des différentes cellules?

Bonjour JBF et bienvenue sur ce forum

Je ne sais pas si Excel a un sens de calcul
Si tu as de nombreuses liaisons et formules tu ne pourras pas éviter Excel de mouliner

A+
 

nyko283

XLDnaute Occasionnel
Re : Dans quel orde Excel réalise les formules des différentes cellules?

Bonjour jbf, Bruno, le forum,

pas sur que cela marche pour ton cas mais on peut calculer uniquement un partie d'un document
et donc faire une parade en utilisant une macro en mettant à l'ouverture du fichier les calculs sur ordre

dans cette exemple les colonnes A,B,C seront calculé 2 fois une première de facon individuelle puis avec le reste du document mais lors de ce dernier calcul tes 3 colonnes seront à jour. suivant le nombre de formule dans les 3 colonnes, cela ralentira d'autant le temps de calcul, mais plus aucune formule ne sera recalculer automatiquement ( gain de temps pendant la saisie, puis faire un calcul à la fin)


VB:
Private Sub Workbook_Open()
Application.Calculation = xlCalculationManual
End Sub
puis apres tu utilise un bouton pour appeler le calcul dans l'ordre choisi
VB:
Sub testcalcul()
ThisWorkbook.Sheets(1).Columns("A:A").Calculate ' calcul uniquement la colonne A
ThisWorkbook.Sheets(1).Columns("B:B").Calculate ' calcul uniquement la colonne B
ThisWorkbook.Sheets(1).Columns("C:C").Calculate ' calcul uniquement la colonne C
Application.Calculate ' Calcul tous les fichiers excel ouvert dans cette application
End Sub
puis avant de fermer le fichier tu remet les calculs en automatique.

VB:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.Calculation = xlCalculationAutomatic
End Sub
sinon si tu veux garder le calcul automatique et utiliser un bouton uniquement pour la mise a jour des 3 colonnes alors
VB:
Sub testcalcul()
Application.Calculation = xlCalculationManual
ThisWorkbook.Sheets(1).Columns("A:A").Calculate
ThisWorkbook.Sheets(1).Columns("B:B").Calculate
ThisWorkbook.Sheets(1).Columns("C:C").Calculate
Application.Calculate
Application.Calculation = xlCalculationAutomatic
End Sub
 

Dranreb

XLDnaute Barbatruc
Re : Dans quel orde Excel réalise les formules des différentes cellules?

Bonjour
À mon avis il vaut mieux dissocier la recherche de la restitution, et n'effectuer la recherche qu'une fois par EQUIV, et restituer toutes les informations associées à l'aide d'INDEX. Ne jamais utiliser RECHERCHEV.
Cordialement.
 

Misange

XLDnaute Barbatruc
Re : Dans quel orde Excel réalise les formules des différentes cellules?

Bonjour

Excel n'a pas un ordre par ligne ou par colonne pour calculer. Quand une cellule change de valeur, excel ne recalcule que les cellules dont la valeur dépend de celle-ci. Quand plusieurs cellules dépendent de celle qui change ça devient plus complexe. Pour en savoir plus, en anglais :
Ce lien n'existe plus
 

Discussions similaires

Réponses
6
Affichages
322
Réponses
5
Affichages
164

Statistiques des forums

Discussions
312 550
Messages
2 089 514
Membres
104 199
dernier inscrit
SimonDtx