Microsoft 365 Power Query: répartir les fichiers sources pour éviter plantages PC

premion

XLDnaute Junior
Bonjour à tous,

A nouveau besoin de votre expérience!

Pour réaliser mes dashboards, j'ai intégré dans des classeurs des requêtes Power Query qui vont récupérer des données dans plusieurs classeurs Excel. Ils peuvent être localisés sur mon PC mais aussi sur Sharepoint (synchronisés sur mon PC)
lorsque j'ouvre plusieurs fichiers qui font tourner des requêtes, j'ai régulièrement des plantages. Ma version d'O365 est en 32 bits et j'ai 16GB de RAM.
Je me demande comment je peux faire pour optimiser mes classeurs afin que l'utilisation soit fluide et surtout qu'ils ne plantent pas.
d'où mes questions:
- combien de requêtes Power Query maximum peuvent tourner par classeurs?
- Si sur un fichier je demande l'actualisation de données en provenance d'une requête située dans un autre classeur, est-ce que la requête source s'actualisera automatiquement?
- vaut-il mieux créer une requête sur une même source qui alimente 10x TCD ou 10x requêtes qui alimentent chacune un TCD?
- Y'a-t-il possibilité de créer des routines qui rafraichissent toutes les requêtes de plusieurs classeurs une fois par jour et laisser le temps à chacune des requêtes d'être actualisée avant de passer à une autre?
Si vous aviez des recommandations (voir des liens, ouvrages...) sur les bonnes règles à mettre en place afin d'organiser les classeurs entre eux ce serait bien. Dans nos organisations, Excel est utilisé à tord et à travers et je ne pense pas qu'avoir des classeurs Excel de plus de 1GB soit très sain!
Pourquoi ne pas créer d'ailleurs une rubrique dédiée à cela?

Merci par avance pour vos conseils ici. Je sais, ma demande est large et peut-être un peu vague, mais après avoir parcouru le forum, je n'ai pas trouvé mon bonheur encore!

Bon week-end à tous

Philippe
 
C

Compte Supprimé 979

Guest
Bonjour Premiom

Pour moi, c'est un mauvais choix, la version M365 32bits 🤔

Juste une petite idée de ce que dit Microsoft au sujet de la version 64bits

Question : combien de requêtes Power Query maximum peuvent tourner par classeurs?
Réponse : cela dépend uniquement de la puissance du PC et de sa mémoire

Question : Si sur un fichier je demande l'actualisation de données en provenance d'une requête située dans un autre classeur, est-ce que la requête source s'actualisera automatiquement ?
Réponse : Non, il faudra le faire avant

Question : vaut-il mieux créer une requête sur une même source qui alimente 10x TCD ou 10x requêtes qui alimentent chacune un TCD?
Réponse : Difficile de choisir selon la configuration et le besoin

Pour le reste je laisse aux pros des requêtes

A+
 

premion

XLDnaute Junior
Merci Bruno pour ta réponse,
Effectivement Excel 32bits est définitivement un souci... Mais c'est le choix de mon organisation... (j't'expliquerai...!)

Donc si je résume, j'ai intérêt à faire tourner une requête par fichier que je vais rafraîchir tous les matins. Je vais essayer d'envisager un petit module VBA pour lancer tout ça alors. Mes Dashboards pourront se rafraîchir en local.

Merci en tous cas pour ta réponse.

Philippe
 

merinos

XLDnaute Accro
Salut @premion ,

Tu peux alleger le boulot en organisant tes données en étoile. Si chaque "ligne" contient moins d'info, tu as besoin de moins de memoire...

une/plusieurs table transaction mais sans info sir les client ou les produits
et liés des tables info contenant ces informations.

dans ce post je viens de montrer cela

pour eviter de recharger les transactions du passé, j'ai tendance a avoir un query qui prends 2001 à 2020 , un autre qui prend 2021.... puis des mesures sur chaque table et une mesure qui fait la somme.

Tu peux mettre dans les propriété des query quand ils seront rechargés.

A+

Merinos
 

premion

XLDnaute Junior
Merci Merinos pour ta réponse.

Je comprends bien l'intérêt de la structure en étoile, que l'on utilise sur Access (que l'on devrait probablement plus utiliser pour traiter des grosses quantités de donnée, je pense... Mais Excel a plus la cote!)
Dans mon cas, je traite un fichier qui est rempli par les équipes commerciales avec des opportunités des dates, du chiffre d'affaires...) environ une trentaine de colonnes. Je te joins un exemple en PJ.
Si je comprends bien, il faut que je retraite le fichier complet avec Power Query pour répartir les données dans des tables avec des clés primaires? Puis n'extraire les infos qu'après à partir de chacune des tables?

C'est bien ça?
 

Pièces jointes

  • P&F EXCELDOWN.xlsx
    47.7 KB · Affichages: 2

merinos

XLDnaute Accro
Salut @premion ,

le cas n'est pas simple.


Combien de lignes/opportunités penses-tu avoir? fr


50 ou 100 milles lignes devraient être possible. (ne pas oublier que le query ne doit charger la table qu'en memoire, sans céation de table visible). je suis monté a 22 millions mais avec moins dinfo par ligne.


Tu crées d'abord un query qui lis UN fichier et transforme ses données. Tu y élimine les data non utiles.
eventuellment tu peux mettre des entiers a la place des nombres décimaux, c'est plus petit...

puis tu copie le query et le transforme en fonction.

Et enfin tu crées un query qui cherche tous les fichiers dans un repertoire puis y applique la fonction..

je me suis amusé a assembler 13 copies de ton fichier... il est ici

A+ ,

Merinos

PS: tu devras changer le path pour que cela fonctionne sur ta machine.

PS2 : je n'ai enlevé aucune colonne

PS3 : n'oublie pas que les mesures créées sont plus efficasses que de mettre directement des colonnes dans tes pivots.
 
Dernière édition:

Statistiques des forums

Discussions
311 740
Messages
2 082 047
Membres
101 880
dernier inscrit
Anton_2024