Grand classeur lent à ouvrir, mais rapide lorsqu'il est divisé en deux classeurs liés. Pourquoi?

1

J'ai un modèle Excel dont l'élément principal est un seul grand tableau structuré contenant environ 2000 colonnes et 200 lignes. Chaque colonne contient une formule identique pour chaque ligne. En tant que fichier XLSB, le classeur fait environ 11 Mo et s'ouvre en 45 secondes. Les formules elles-mêmes sont efficaces - un calcul complet du classeur est effectué en moins d'une seconde.

Si je scinde ce modèle en deux, en utilisant deux feuilles distinctes dans le même classeur (avec des références entre elles), les performances ne changent pas. Toutefois, lorsque je scinde ces feuilles en deux classeurs, avec les liens comme références externes, je peux ouvrir les deux fichiers et actualiser les liens en 10 secondes environ.

Pourquoi des classeurs séparés amélioreraient-ils les performances? La même performance peut-elle être obtenue dans un seul classeur?

EDIT: les classeurs assainis peuvent être trouvés ici: https://drive.google.com/drive/folders/0Bz0YVEO1u0jOaGtpS1ZnR3kzRWc?usp=sharing Model1.xlsb et Model2.xlsb sont les fichiers divisés. Pour créer Model1and2.xlsb, je n'ai fait que déplacer les deux feuilles de Model2 vers Model1.

EDIT 2: Setting Workbook.ForceFullCalculation=TRUErésout ce problème. Cela a certainement quelque chose à voir avec le temps de charger l'arbre de dépendance. J'ai ajouté Model1and2-ForceFullCalculation.xlsb au dossier partagé pour illustrer.

Maciej
la source
C'est une question intrigante. Cependant, en l'état, c'est un peu hypothétique et vous pouvez simplement attirer des réponses spéculatives. La feuille de calcul est-elle quelque chose que vous pouvez partager (éventuellement après désinfection), afin que les gens puissent analyser ce qui pourrait se passer? Vous pouvez le coller sur un site de partage public et y poster un lien.
Fix1234
Bon point @ fixer1234 - Je vais faire de l'obscurcissement, assainir et poster des cahiers d'exercices sous peu
maciej
@ Fix1234 Désolé, cela a pris plus de temps pour frotter que prévu! Problème mis à jour avec un lien pour télécharger des fichiers.
maciej
J'utilise principalement LO Calc. Il est supposé pouvoir ouvrir ces fichiers mais les deux fichiers simples s'ouvrent en mode de récupération. Quand ils ont ouvert, ils étaient tous deux un mur de codes d'erreur. Le fichier combiné ne s'ouvrirait pas du tout. Cela a juste accroché et a dû être terminé. Je ne peux donc pas tester directement votre symptôme. Cependant, le simple fait que le fichier combiné se comporte différemment indique qu'il ne reste plus que la division d'un fichier. Il est possible que le fichier d'origine ait été corrompu, mais c'est un problème auquel Excel est en mesure de faire face, avec un peu de temps supplémentaire pour le nettoyage interne. (suite)
fixer1234 le
Essayez de créer un nouveau fichier de la même manière que vous avez fait avec les morceaux, mais faites-le avec le tout. Cette action a peut-être laissé la corruption pour les morceaux et peut vous donner un fichier combiné propre. Retester avec celui-là et voir ce qui se passe.
fixer1234