Digitalisation Excel pour les prévisions et l’analyse ERP
Transfert d’un fichier Excel stratégique et mature au sein d’une web application sur mesure pour gagner en performance et en stabilité.
Contexte sur la digitalisation Excel
Ce projet consistait à digitaliser un fichier Excel très utilisé dans différentes usines d’un groupe agroalimentaire. Ce fichier Excel permettait aux équipes de gagner beaucoup de temps aux équipes dans le traitement des données de prévisions de ventes, et elles ne pouvaient plus s’en passer.
Cependant, nous connaissons tous les limites de la digitalisation Excel et ses nombreux problèmes. Parfois les équipes se heurtaient à des problématiques frustrantes. Pour en savoir plus sur le fichier Excel implémenté, vous pouvez consulter le projet d’administration des prévisions de vente Excel.
Ci-dessous un tableau comparatif qui illustre les avantages de la digitalisation d’un tel fichier.
De plus, parmi les autres avantages que l’on peut citer, l’application web gère une grande quantité de données. Par conséquent, elle permet de conserver les historiques des années précédentes et de garantir son bon fonctionnement pour les années à venir. Ce n’était pas possible avec Excel, où la surcharge de données nuisait considérablement aux performances.
Ainsi, pour mieux gérer le fichier, nous avions donc décidé avec les utilisateurs d’avoir un fichier distinct pour chaque année de prévision. Ce fonctionnement devenait contraignant, car à la fin de l’année, les équipes se retrouvaient à jongler entre deux fichiers. En revanche, la web-app gère n’importe quelle année à tout moment !
Ergonomie de la digitalisation Excel
Pour ne pas trop perturber l’utilisateur, nous avons conçu une navigation sous forme d’onglets. Ainsi, l’utilisateur retrouve le même fonctionnement que sous Excel. L’onglet sélectionné est en gras et légèrement plus grand que les autres.
Le chargement des données provenant de l’ERP se fait toujours à partir d’extractions (les trois onglets sont nommés « extraction1 », « extraction2 » et « extraction3 ») sous format Excel, bien qu’une implémentation en EDI soit tout à fait possible.
De plus, l’utilisateur peut joindre ses fichiers de manière classique ou utiliser une zone de cliqué-glissé pour les y ajouter. Par exemple, il peut modifier en masse les fonds de rayon standards présents dans sa base de données. Il peut aussi changer les produits un par un en modifiant directement les valeurs affichées dans le tableau. Une mise à jour se fait alors en temps réel dans la base de données.
Grâce à la digitalisation Excel, l’utilisateur ne perçoit pas le traitement effectué par le programme, ce qui rend l’expérience totalement fluide.

Prenons l’exemple du texte avec la voix passive supprimée et des mots de transition ajoutés :
« Prenons l’exemple des prévisions de promotions : le tableau affiche une interface qui permet de sélectionner une plage de dates de la durée souhaitée. Les données apparaissent ensuite avec un format conditionnel.
Ainsi, le tableau devient agréable à consulter. Par exemple, il grise automatiquement les dimanches et détecte les jours fériés, et sont alors mis en évidence avec une teinte rosée. De plus, chaque en-tête de colonne inclut un filtre. Lorsqu’un utilisateur saisit un caractère ou un chiffre dans ce filtre, le tableau se rafraîchit immédiatement pour n’afficher que les lignes correspondantes.

Nous utilisons une base de données MongoDB en noSql. Ce choix technique améliore nettement la performance des requête. Il s’adapte parfaitement à la digitalisation de ce fichier. Chaque article contient un nombre de données variable. Par exemple, un article peut inclure un fond de rayon mais aucune promotion. Cette flexibilité permet de gérer des données hétérogènes avec efficacité.
Par ailleurs, les équipes de développement de l’ERP dans l’usine travaillaient également sur un projet de digitalisation Excel pour ce processus prévisionnel. Cependant, elles n’ont pas réussi à atteindre ce niveau de performance. En effet, leur système reposait sur un grand nombre de tables SQL nécessitant de nombreuses jointures. En revanche, notre approche traite chaque article comme un simple objet. Cet objet contient des sous-objets pour ses caractéristiques, ses données de prévisions de promotions, ses données de fonds de rayon, ses ventes réelles… Cette méthode offre ainsi une solution plus performance et adaptée.
Algorithmes des prévisions
Le système propose de nombreux algorithmes de calculs aux utilisateurs. Ces algorithmes traitent plusieurs dizaines de milliers de lignes en moins de 3 secondes. Malgré le volume de calculs impressionnant, l’affichage du tableau reste fluide et rapide.
Exemple: l’utilisateur peut appliquer un coefficient d’augmentation ou de diminution à des articles répondant à des critères spécifiques. Dans ce cas, seules les volailles d’espèce BIO et de couleur blanche verront leurs ventes augmenter de 50% les mardis et mercredis de la période sélectionnée.

Autre exemple: créer des prévisions de fonds de rayon sur une longue durée à partir de la table des fonds de rayon standards
Dans le projet de développement des prévisions au sein de l’ERP, il était uniquement possible de coefficienter sur une semaine. Le temps de calcul et d’écriture en base de données prenait environ 15 secondes. Ainsi, lorsque je devais obtenir des données prévisionnelles sur un an, je devais répéter la manipulation 52 fois ! Vous imaginez bien à quel point cela pouvait devenir frustrant.
En revanche, avec cette maquette en web-app, je peux générer 10 ans de prévision en un clic, avec seulement une d’attente !
Cette transition apporte un gain de temps considérable et simplifie grandement le processus.
Options
Parmi les options intéressantes, il est possible :
- de réaliser diverses configurations d’affichage des colonnes en permettant d’afficher / masquer les colonnes celles qui vous intéressent :
Par exemple, prenez le case des fonds de rayon standard :
En appuyant sur le bouton « FDR Vs REEL », les colonnes liées aux ventes réelles s’affichent. Un second appui sur ce même bouton permet de revenir à l’affichage précédent.
- de conserver des notions d’historique pour assurer un suivi précis des prévisions
En effet, les planificateurs, principaux utilisateurs du fichier, permettent de conserver un historique des modifications apportées aux prévisions. Cela s’explique par le fait que, dans certaines situations, le service commercial peut modifier les quantités prévues sans respecter les délais convenus. Or, ces ajustements « discrets » peuvent entraîner des conséquences significatives sur la planification.
Ainsi, le fait de garder une trave des ces modifications offre plusieurs avantages :
- D’une part, cela permet d’expliquer certaines anomalies ou décisions
- D’autre part, cela démontre que les prévisions sont suivies de manière rigoureuse
Pour répondre à ces besoins, nous avons conservé un visuel familier, en utilisant un commentaire de type Excel avec un petit triangle rouge en haut à droite de la cellule. Concrètement, au survol de la souris, un commentaire affiche l’ancienne valeur ainsi que la date de modification. De plus, si plusieurs modifications ont eu lieu, elles seront toutes affichées dans un historique clair et structuré.
Statistiques en temps réel avec la digitalisation Excel et ses prévisions
Des statistiques peuvent être ajoutées à volonté dans un tel projet, exactement comme on ajouterait des graphiques dans Excel. Dans le cas présent, à chaque modification d’une prévision, un processus enfant est lancé en parallèle du processus principal qui gère l’application. Grâce à ce mécanisme, l’utilisateur ne perçoit aucun ralentissement de son application, même lorsque l’algorithme applique des modifications massives aux prévisions. De plus, le graphique est automatiquement mis à jour lors de la remontée d’un évènement depuis le serveur.
Ainsi, l’utilisateur n’a pas à se poser la question de vérifier si son graphique est à jour ou non. Pas besoin d’attendre un cron norturne pour la mise à jour des données : tout se fait en temps réel ! Quel bonheur pour un utilisateur !
On pourrait penser que cela relève de détails, mais non : lorsque vous travaillez avec un ERP, la situation est bien différente. En effet, vous ne savez souvent pas si vos données sont à jour, si vous devez appuyer sur un bouton ou simplement attendre qu’une mise à jour ait lieu pendant la nuit. Sans oublier le temps d’attente une fois le bouton pressé !
Export des données des prévisions
Une fois que le planificateur a déterminé son travail à effectuer sur ses fonds de rayon, il doit réaligner les données par produit entre les promotions et les fonds de rayon. Cette étape prenait beaucoup de temps dans le fichier Excel. Pour y consolider, l’objectif est de créer un fichier CSV ou TXT contenant toutes les données correctement formattées pour la bonne compréhension de l’ERP qui gère la partie GPAO.
L’application web simplifie le processus. En cliquant sur un bouton, l’utilisateur peut réaliser l’export après avoir choisi la date de début et le nombre de jours de prévision à transmettre à la GPAO. Ensuite, il sélectionne le répertoire où sauvegarder le fichier. Cette étape est nécessaire, car le navigateur ne peut pas accéder au PC de l’utilisateur dans autorisation.
Cependant, il est également possible de configurer un répertoire sur un serveur pour stocker ces fichiers. Dans ce cas, l’application Node.js (le back-end) effectue directement l’opération. Bien entendu, les services informatiques doivent autoriser l’application à écrire dans ce répertoire pour que cette option fonctionne.

La génération du fichier s’effectue instantanément. A titre de comparaison, dans un cas similaire, les tests menés par la société pour inclure ce projet dans l’ERP nécessitaient entre 20 à 30 minutes. Ce développement, réalisé en JAVA avec une base ORACLE, présentait des performances insuffisantes pour envoyer une année complète de prévision ou permettre des envois spontanés. Nous avions donc opté pour un envoi programmé chaque nuit.
Ce problème provenait d’une requête SQL massive impliquant de nombreuses tables, vues et sous-requêtes imbriquées. L’équipe de développement considétait ces temps de traitement comme incompréhensible.
Dans notre approche actuelle, nous utilisons une table préformattée, mise à jour de manière évènementielle. Ainsi, chaque fois qu’une prévision est modifiée, le tableau s’actualise automatiquement. Grâce à ce système, la génération du fichier devient possible à tout moment. Ne vous laissez donc plus ralentir par des temps de traitement interminables !!!
Conclusion
Si vous avez pris le temps de lire cet article jusqu’au bout, je vous en remercie vivement. J’espère que vous y avez trouvé des informations utile pour avancer dans vos projets.
Si vous souhaitez vous aussi passer le cap de la digitalisation de vos fichiers Excel, alors n’hésitez pas à me laisser des commentaires ou à me contacter via le formulaire de contact pour toute collaboration, car j’adore relever ce type de défis !
Synthèse des principales fonctionnalités
- Affichage de statistiques sous formes graphique pour avoir une visualisation des prévisions
- Constitution d’un fichier de prévisions alignées entre Fonds de rayon et promotions pour intégration dans l’ERP
- Importation de 3 extractions issues d’un ERP représentant un grand nombre de lignes (parfois > 200 000 lignes) L’importation se fait sous forme de cliqué-glissé de fichiers Excel sur le navigateur
- Application de prévisions types aux semaines de l’année en cours – Possibilité de coefficienter les prévisions types par famille / sous-famille
- Re-traitement des 200 000 lignes de prévisions par l’algorithme pour organiser et lisser les données, et offrir une représentation tabulaire à l’utilisateur avec toutes les fonctionnalités Excel classiques (filtres, écritures dans les cellules …)
- Conservation de l’historique des modifications de prévisions faites par l’équipe commerciale
Technologies
- Express
- EJS
- MongoDB
- Multer
- Child-process
- Tabulator
- Google Charts
- Socket.io
Découvrez les services que je propose : « Développement GPAO Web« , « Développement GPAO Excel« .

Killian AUDIC
Développeur de solutions GPAO