Remplacer un registre Excel par une liste SharePoint — En finir avec « le registre qui casse » grâce au partage, à l'historique et à l'intégration des flux

· · Power Automate, SharePoint, Microsoft Lists, Excel, Microsoft 365, Gestion de registres, Automatisation des processus métier, Conseil technique

« J’ai ouvert le registre_gestion_dossiers.xlsx et il était en lecture seule. Comme je ne savais pas qui l’avait ouvert, j’ai fait une copie pour la mettre à jour, et je ne savais plus laquelle était la plus récente. » « J’ai trié les données et les lignes se sont décalées : la note d’un autre dossier s’est retrouvée collée au mauvais endroit. » Nous recevons souvent ce type de témoignages de la part d’entreprises qui font tourner leurs registres de gestion de dossiers, de suivi des demandes ou de gestion du matériel sur un fichier Excel dans un dossier partagé.

Excel est un excellent tableur, mais il présente une limite structurelle en tant que « lieu où plusieurs personnes ajoutent et mettent à jour un registre simultanément ». Si vous avez déjà déployé Microsoft 365, vous disposez déjà, pour cet usage, d’un contenant dédié : la liste SharePoint (Microsoft Lists). Édition simultanée ligne par ligne, historique des modifications, saisie typée, et même l’évolution vers des notifications et des approbations via Power Automate — tout ce dont un registre a besoin s’y trouve réuni.

Cet article présente d’où viennent les limites d’un registre Excel, comment décider de basculer vers une liste SharePoint et la procédure de migration, les points d’attention de conception à commencer par le seuil de 5 000 éléments des vues de liste, et enfin comment transformer le registre en « registre vivant » grâce à l’intégration avec Power Automate.

Public visé et environnement prérequis : cet article s’adresse aux responsables informatiques et métier qui font tourner un registre Excel de dossier partagé à plusieurs. Le prérequis est d’avoir déjà déployé Microsoft 365, avec un plan permettant d’utiliser SharePoint Online (la liste SharePoint, c’est-à-dire Microsoft Lists, est une fonctionnalité comprise dans ce périmètre).1 L’intégration avec Power Automate traitée dans cet article repose elle aussi entièrement sur des connecteurs standard, à commencer par le connecteur SharePoint, et peut donc être mise en place avec le droit d’utilisation de Power Automate inclus dans la licence Microsoft 365.23 Une licence supplémentaire n’est nécessaire que si vous allez chercher des connecteurs premium comme Dataverse ou SQL, abordés au chapitre 7.4

1. La conclusion, d’abord

  • La cause profonde des incidents d’un registre Excel (écrasement, décalage de lignes, version la plus récente introuvable) est que le fichier entier constitue l’unité d’édition. Une liste SharePoint étant éditée et historisée au niveau de la ligne (l’élément), ce type d’incident devient structurellement beaucoup moins probable.
  • Une liste SharePoint peut stocker jusqu’à 30 millions d’éléments par liste, et les pièces jointes d’un élément de liste peuvent atteindre 250 Mo par fichier.5
  • La limite de 5 000 éléments dont on entend souvent parler est le « seuil d’affichage de liste » (list view threshold), et non un plafond du nombre d’éléments stockables. Avec une conception combinant colonnes indexées et vues filtrées, on peut continuer à exploiter la liste bien au-delà de 5 000 éléments.67
  • Dans SharePoint Online, l’historique des versions d’une liste est actif dès sa création (50 versions par défaut). La trace de « qui a modifié quel élément, et quand » est conservée dès le départ.8
  • Microsoft Lists dispose d’une fonction d’importation qui crée une liste à partir d’un classeur Excel. Cela dit, en pratique, la migration consiste à finaliser au préalable la suppression des fusions de cellules, la mise à plat en une ligne par enregistrement, le nettoyage des variations d’écriture et la conception des types de colonnes, avant l’importation.1
  • Le connecteur SharePoint étant un connecteur standard, vous pouvez construire, dans le périmètre de votre licence Microsoft 365, des flux de notification, d’approbation et de relance déclenchés par « lorsqu’un élément est créé ou modifié ».23
  • Pour une feuille dont l’objectif principal est l’agrégation et l’analyse, ou un registre à faible fréquence de mise à jour touché par une ou deux personnes seulement, rester sur Excel ne pose pas de problème. À l’inverse, des données métier avec de nombreuses relations, un volume de plusieurs centaines de milliers d’enregistrements, ou une exigence de cohérence transactionnelle relèvent non pas d’une liste mais de Dataverse (la plateforme de données de Power Platform pour les applications métier — une base de données cloud qui conserve les données comme un ensemble de tables, conçue autour des relations entre tables et d’un contrôle d’accès basé sur les rôles)9 ou d’un système métier (développement sous contrat). À noter que le connecteur permettant d’utiliser Dataverse depuis Power Automate est classé dans le niveau premium, ce qui suppose l’ajout d’une licence.4

2. Où se situent les limites d’un registre Excel

D’après les consultations que nous recevons, les points où un registre Excel commence à se dégrader sont globalement toujours les mêmes.

  • Édition simultanée et écrasement. Sur un Excel de dossier partagé, le fichier passe en lecture seule dès que quelqu’un l’a ouvert. Ceux qui ne peuvent pas attendre créent une copie, et des fichiers comme « registre_dernier.xlsx » ou « registre_0715_correction_tanaka.xlsx » se multiplient, au point qu’on ne sait plus lequel fait foi. La co-édition dans Excel pour le web permet certes d’éviter le problème de l’ouverture simultanée en tant que telle, mais les problèmes suivants subsistent.
  • Décalage et corruption des lignes. Coller des données alors qu’un filtre est actif, mal sélectionner la plage lors d’un tri, un décalage d’une seule colonne voisine lors de l’insertion d’une ligne. La liberté d’un tableur est, pour un registre, aussi une liberté de casser les données. Et pour savoir qui a cassé quoi et quand, on n’a guère plus qu’une date de dernière modification du fichier comme indice.
  • Les règles de saisie ne sont pas respectées. On a beau décider que « le statut se choisit parmi ces cinq valeurs » ou que « la date suit le format aaaa/mm/jj », une cellule accepte n’importe quoi. Même avec une règle de validation des données configurée, un simple copier-coller l’écrase facilement. Les variations d’écriture reviennent ensuite sous forme de coûts d’agrégation et de recherche.
  • La dépendance à une seule personne pour les macros. Un registre dont la transcription ou l’agrégation a été automatisée en VBA devient une boîte noire dès que la personne qui l’a créée change de poste ou quitte l’entreprise. Les classeurs contenant des macros tendent aussi à subir des dommages plus importants en cas de corruption du fichier.
  • Impossible de séparer « consulter » et « modifier ». On finit par remettre un fichier modifiable même aux personnes à qui l’on souhaitait seulement donner un droit de consultation ; la séparation des droits n’est pas possible.

Cela dit, certains registres peuvent tout à fait rester sur Excel. Ceux mis à jour par une ou deux personnes à faible fréquence, les tableaux d’agrégation simplement créés et diffusés chaque mois, les feuilles d’analyse où les formules, les tableaux croisés dynamiques et les graphiques sont les éléments centraux, ou les documents dont la mise en page imprimée elle-même a un sens. Dans ces cas, le problème de « mise à jour simultanée par plusieurs personnes » ne se pose pas, ou s’il se pose, les atouts d’Excel (calcul, mise en page) l’emportent encore. Les critères de décision pour la bascule sont résumés dans le tableau du chapitre 7.

3. Qu’est-ce qu’une liste SharePoint — une base de données de lignes, pas un tableau de cellules

La liste SharePoint est une fonctionnalité de SharePoint incluse dans Microsoft 365, et la même chose peut être créée et utilisée depuis l’application Microsoft Lists (ouvrir une liste dans SharePoint vous redirige vers Microsoft Lists, ce sont bien la même entité sous-jacente).10 La principale différence avec Excel est que l’unité d’édition est la ligne (l’élément), et non la cellule.

Aspect Registre Excel Liste SharePoint
Unité d’édition Le fichier entier (cellules librement modifiables) La ligne = l’élément
Type de colonne Aucun (les règles de saisie peuvent être contournées) Typé (choix, date, nombre, utilisateur, oui/non, référence, etc.)11
Historique des modifications Dépend de la gestion des versions du fichier Historique des versions par élément (actif par défaut, 50 versions)8
Présentation Tend à se fragmenter en copies de feuilles Plusieurs vues définissables (filtrage, tri, regroupement)
Saisie Saisie directe en cellule Formulaire de saisie (champs obligatoires, contrôle de type)
Droits d’accès Uniquement au niveau du fichier Configurables au niveau de la liste ou de l’élément
Environnement d’utilisation Poste disposant d’Excel Navigateur, onglet Teams, mobile1

Voici un complément sur les fonctionnalités qui comptent en pratique.

  • Le type de colonne. Avec une colonne de choix, le statut ne peut prendre que les valeurs définies. Une colonne utilisateur étant liée à un compte de l’organisation, les variations d’écriture pour le « responsable » disparaissent. Une colonne date n’accepte que des dates, ce qui fiabilise le jugement des échéances et le tri. Une colonne de référence (lookup) permet aussi de construire une relation simple en pointant vers les valeurs d’une autre liste.1112
  • Les vues. Comme « mes dossiers », « échéance ce mois-ci » ou « non terminés uniquement », les mêmes données peuvent être partagées sous des présentations adaptées à chaque objectif. Plus besoin de copier des feuilles Excel pour les distribuer par personne.
  • L’historique des versions. Pour chaque élément, on enregistre quand, qui, et quelle colonne a été modifiée et comment, avec la possibilité de revenir à une version antérieure. Dans SharePoint Online, c’est actif par défaut dès la création de la liste.8 « Quelqu’un a supprimé ceci » ou « je veux connaître la valeur précédente » trouvent désormais leur réponse dans une fonctionnalité standard.
  • Alertes et règles. Des règles simples envoyant une notification lors d’un changement de valeur peuvent être configurées côté liste seule.1 Pour des notifications plus élaborées ou des branchements conditionnels, c’est Power Automate qui entre en jeu (chapitre 6).
  • Teams et mobile. Lists peut être ajouté comme onglet dans un canal Teams, et la même liste peut être manipulée depuis le bureau, le web ou le mobile.1 Mettre à jour l’état d’une demande depuis un smartphone, directement sur le terrain, devient une pratique réaliste.

4. La pratique de la migration — nettoyage → conception des colonnes → importation → vues → bascule

La migration depuis un registre Excel se déroule dans l’ordre suivant. Plus que la manipulation des outils, ce sont les deux premières étapes (nettoyage et conception des colonnes) qui déterminent la réussite.

(1) Le nettoyage des données existantes d’abord

Un registre Excel contient toujours des structures qui n’étaient permises que parce que c’est un tableur. Une liste ayant une structure plate d’une ligne = un élément, on commence par mettre de l’ordre côté Excel.

  • Défusionner les cellules (les fusions ne peuvent pas être importées dans une liste)
  • Passer à une ligne par enregistrement (résoudre les cas où plusieurs dossiers tiennent dans une seule cellule, ou où un seul dossier s’étend sur plusieurs lignes)
  • Ramener l’en-tête à une seule ligne (renommer les colonnes en cas d’en-tête sur deux niveaux)
  • Unifier les variations d’écriture (« en cours / en cour / en traitement » → les aligner sur les valeurs candidates de la colonne de choix)
  • Supprimer les lignes de sous-total intermédiaires et les lignes vides décoratives
  • Décider, pour les cellules contenant des formules, si on les conserve « en tant que valeur » ou si on les « reproduit côté agrégation après la migration »

Ce nettoyage est à la fois un travail de migration et un inventaire de la conception du registre. Il est normal de découvrir en grand nombre des choses comme « personne ne renseigne cette colonne » ou « ces deux colonnes avaient en fait le même sens ».

(2) La conception des types de colonnes

Pour chaque colonne de l’Excel nettoyé, on décide de quel type de colonne de liste elle relève. Voici les règles de base.

Élément du registre Type de colonne de liste Point clé
Statut, catégorie, priorité Colonne de choix Fixer ici les valeurs candidates. Ne pas autoriser la saisie libre
Responsable, demandeur Colonne utilisateur Liée à un compte de l’organisation, utilisable pour les notifications et la vue « mes éléments »
Date de réception, échéance, date d’achèvement Colonne date Base des jugements d’échéance et des flux de relance
Montant, quantité Colonne numérique Toujours utiliser le type numérique pour les colonnes destinées à l’agrégation
Nom du client, objet Texte sur une ligne Si le référentiel clients existe dans une autre liste, envisager aussi une colonne de référence (lookup)12
Notes de suivi Texte multiligne Si l’usage est principalement l’ajout, l’historique des versions permet d’en garder la trace

(3) L’importation

Microsoft Lists dispose d’une fonction qui importe les données d’un classeur Excel pour créer une liste, ce qui permet de partir du registre existant.1 Le point d’entrée consiste à aller dans l’application Microsoft Lists (ou dans le site SharePoint où vous souhaitez placer la liste), puis à suivre « Nouveau » > « Liste », et à choisir « Depuis Excel » dans la liste des méthodes de création. En indiquant le classeur nettoyé, un écran s’affiche pour vérifier les colonnes à importer et leur type.

Cela dit, en pratique, mieux vaut ne pas s’en remettre entièrement à la détection automatique de l’importation : nous recommandons de décider d’abord des types de colonnes puis de les vérifier au moment de l’importation (ou, à l’inverse, de concevoir d’abord une liste vide et d’y déverser les données ensuite). Les colonnes de choix et les colonnes utilisateur en particulier déterminent la qualité du registre : si l’on commence l’exploitation avec des colonnes texte non typées, l’intérêt même de la migration se trouve à moitié perdu.

Par ailleurs, pour un registre de plusieurs milliers de lignes, ne planifiez pas de tout confier à une seule importation. Dès que les données sont importées, la conception liée au seuil de 5 000 éléments traitée au chapitre 5 devient le premier défi, et plus l’importation est volumineuse, plus la vérification des types de colonnes et une éventuelle reprise en cas d’échec deviennent lourdes. Il est plus sûr de d’abord créer une liste vide avec la conception des colonnes finalisée, de préparer les colonnes indexées et les vues filtrées pour parer au seuil, puis d’injecter les données en les découpant en lots cohérents (en faisant d’abord une répétition avec une partie des données réelles).

(4) Vues et droits d’accès

Configurez la vue par défaut selon la forme du travail quotidien, par exemple « non terminés uniquement, triés par échéance croissante », et prévoyez une vue « tous les éléments » séparément. C’est aussi une préparation au seuil de 5 000 éléments abordé plus loin. Pour les droits d’accès, commencez par séparer « ceux qui peuvent modifier » et « ceux qui ne peuvent que consulter » au niveau de la liste, et limitez les droits fins au niveau de l’élément aux cas où ils sont réellement nécessaires (la modification des droits une fois le nombre d’éléments élevé comporte des contraintes — voir le chapitre 5).

(5) Période transitoire et bascule

L’idéal est de fixer une date de migration et de basculer d’un coup, mais en pratique, il y aura toujours des personnes qui continuent d’écrire dans Excel pendant un moment. Si vous prévoyez une période transitoire, il est plus sûr de déclarer que « la liste fait foi, Excel n’est qu’une copie de référence » et de passer le fichier Excel en lecture seule. Laisser une double exploitation se poursuivre sans cadre fait qu’aucune des deux ne fait plus foi.

5. Limites et points de conception — 5 000, pièces jointes, « ce qu’Excel a mais que la liste n’a pas »

Bien comprendre le seuil de 5 000 des vues de liste

Dans SharePoint Online, il existe par défaut un seuil de 5 000 éléments pour le nombre d’éléments qu’une seule vue (affichage, tri, filtrage, regroupement, etc.) peut traiter en une fois. Au-delà, on obtient une erreur du type « le nombre d’éléments de cette liste dépasse le seuil d’affichage de liste », ou le tri et le filtrage d’une colonne échouent.67

Le point important ici, c’est que ce n’est pas un plafond du nombre d’éléments stockables. La liste elle-même peut stocker jusqu’à 30 millions d’éléments.5 Ce qui est limité, c’est « une requête qui balaye en une fois une plage dépassant 5 000 éléments », et des solutions sont officiellement documentées.

  • Indexer les colonnes utilisées pour le filtrage. Créez un index de colonne sur les colonnes qui servent d’axe de tri ou de filtrage (date de réception, statut, responsable, etc.). Cependant, l’ajout ou la suppression d’index n’est possible que jusqu’à 20 000 éléments, il faut donc concevoir cela avant que la liste ne grossisse.7
  • Toujours limiter les vues à moins de 5 000 éléments. Intégrez à la vue par défaut un filtrage sur une colonne indexée, comme « l’exercice en cours », « non terminés uniquement » ou « responsable = moi ».7

L’endroit où créer un index n’est pas évident, voici donc le chemin dans les menus. Ouvrez la liste, allez dans les paramètres (roue crantée) en haut à droite > « Paramètres de la liste » (List settings) > dans la section « Colonnes », « Colonnes indexées » (Indexed columns) > « Créer un nouvel index » (Create a new index), puis choisissez la colonne cible (colonne principale) pour créer l’index. On peut créer au maximum 20 colonnes indexées par liste ou bibliothèque, réservez-les donc aux colonnes de filtrage les plus utilisées.13

Pour un registre de dossiers ou de demandes d’une PME, on compte souvent quelques centaines à quelques milliers d’éléments par an, ce qui semble hors de portée pour l’instant, mais c’est un chiffre qu’on atteint au bout de quelques années d’accumulation. En mettant en place dès le départ une « vue par défaut filtrée par exercice + colonnes indexées », on évite de se retrouver pris de court plus tard. À noter qu’au-delà de 100 000 éléments, d’autres contraintes de montée en échelle apparaissent, comme l’impossibilité de rompre l’héritage des droits au niveau de la liste ou du dossier.5 Si une exploitation à l’échelle de plusieurs centaines de milliers d’éléments est prévisible dès le départ, c’est une base de données (Dataverse, SQL) qu’il faut choisir plutôt qu’une liste (chapitre 7).

La gestion des pièces jointes — colonne de pièces jointes ou bibliothèque de documents

Un élément de liste peut recevoir des pièces jointes, jusqu’à 250 Mo par fichier.5 Cependant, deux points méritent votre attention en pratique.

  • L’historique des versions de la liste enregistre les modifications de colonnes, mais les modifications des pièces jointes ne sont pas versionnées.8
  • Lorsque vous manipulez des pièces jointes depuis Power Automate, le connecteur SharePoint peut traiter des pièces jointes allant jusqu’à 90 Mo.2

Pour des fichiers qui nécessitent eux-mêmes une gestion des versions ou une co-édition, comme des devis ou des rapports, il est plus facile de les stocker dans une bibliothèque de documents plutôt qu’en pièce jointe de liste, et de les rattacher à l’élément par un lien ou un numéro de référence. Considérez la colonne de pièces jointes comme réservée à des preuves légères et subordonnées à l’élément, comme « une simple page scannée d’un fax ».

Ce qu’Excel a, mais que la liste n’a pas

Dans les consultations de migration, nous vérifions systématiquement le degré de dépendance à « ce qui était possible parce que c’était Excel ».

  • La mise en page libre. Les cellules fusionnées, les en-têtes sur deux niveaux, ou un tableau dont le sens repose uniquement sur un code couleur ne peuvent pas être reproduits. Le sens se déplace vers les colonnes, la présentation vers les vues.
  • Les formules complexes entre cellules. La liste dispose aussi de colonnes calculées (valeurs calculées), mais elles ne remplacent pas un réseau de calculs complexe référençant la feuille entière ni un tableau croisé dynamique. L’agrégation et l’analyse se répartissent en connectant les données de la liste à Excel ou Power BI. Une procédure officielle existe pour créer un rapport en connectant Power BI Desktop à une liste, ainsi qu’une méthode pour créer directement un modèle sémantique Power BI à partir d’une liste dans le service Power BI et l’actualiser périodiquement.1415
  • La mise en page d’impression. Si le registre servait tel quel de format imprimé, l’écran de la liste ne fera pas office de document imprimable. Si l’impression est un besoin, il faut concevoir une solution comme verser les données exportées dans un modèle Excel, ou construire séparément le document imprimable.

Autrement dit, la bonne façon de faire la bascule consiste à réorganiser le travail en une répartition « la saisie et le partage à la liste, le calcul et la mise en page à Excel/Power BI ».

6. La connexion à Power Automate met le registre en mouvement

Le plus grand bénéfice de la bascule vers une liste SharePoint, c’est l’intégration avec Power Automate. Le connecteur SharePoint étant un connecteur standard, vous pouvez construire des flux cloud dans le périmètre d’une licence Microsoft 365 permettant d’utiliser des connecteurs standard.2 La liste dispose de déclencheurs comme « lorsqu’un élément est créé » ou « lorsqu’un élément est créé ou modifié », qui permettent de faire directement de l’enregistrement ou de la mise à jour du registre le point de départ d’un flux.23

Nettoyage, conception des colonnes, migrationTranscription des réponsesDéclencheur création/mise à jour d'élémentConnexion/exportRegistre Excel existantListe SharePointRegistre de dossiers/demandesMicrosoft FormsPoint d'entrée des demandesPower AutomateFlux cloudNotification au responsable par Teams/e-mailTransmission au flux d'approbationExécution planifiéeRelance des éléments en retardAgrégation Excel / rapport Power BI

Il existe trois schémas représentatifs.

  • Notification. Envoyer une notification Teams au canal responsable dès qu’une nouvelle demande est enregistrée, ou un e-mail à la personne concernée dès que la colonne responsable est renseignée. On passe d’une exploitation où l’on « va consulter » le registre à une exploitation où « il nous prévient ».
  • Approbation. Démarrer un flux d’approbation dès que le statut passe à « demande d’approbation », puis réécrire le résultat, l’approbateur et la date/heure dans les colonnes de la liste. Cette configuration où la preuve d’approbation se retrouve rassemblée sur la même ligne du registre est traitée en détail dans un autre article, « Créer un flux d’approbation avec Power Automate — numériser les circuits de validation papier et par e-mail ».16
  • Relance et inventaire. Extraire chaque matin, par un déclenchement planifié, les éléments « en retard et non terminés » et envoyer une notification groupée aux responsables. Les flux de relance utilisant SharePoint sont documentés officiellement comme un scénario classique.3 La conception de l’exécution périodique, incluant le jugement des jours ouvrés et le traitement de fin de mois, est résumée dans « Concevoir des flux planifiés et la logique des jours ouvrés dans Power Automate ».

Il y a un point de conception à signaler. Si un flux déclenché par « lorsqu’un élément est créé ou modifié » met lui-même à jour la liste, cette mise à jour peut le redéclencher, créant une boucle infinie. La pratique standard n’est pas de l’écarter par un branchement conditionnel en aval, mais d’écrire côté déclencheur, via les conditions de déclenchement (trigger conditions), « ne se déclenche que lorsque le statut a une valeur précise ». Pour une mise à jour qui ne satisfait pas la condition, l’exécution elle-même n’a pas lieu, et elle ne reste même pas dans l’historique d’exécution.17

Voici l’emplacement de configuration et la forme des expressions. Dans le concepteur, sélectionnez le déclencheur, puis dans « Paramètres » (Settings), « Conditions de déclenchement » (Trigger conditions), ajoutez une expression par ligne avec « + Ajouter » (dans le concepteur classique : « … » en haut à droite du déclencheur > « Paramètres » > « Conditions de déclenchement »). Une expression doit toujours commencer par @. Si vous en écrivez plusieurs, le déclenchement n’a lieu que si toutes sont satisfaites (évaluation ET) ; si vous voulez qu’« au moins une » suffise, regroupez-les en une seule expression avec @or(condition1, condition2).17

@equals(triggerBody()?['Status']?['Value'], 'demande d''approbation')

Il s’agit de la condition « ne se déclenche que lorsque la colonne de statut (nom interne Status) devient “demande d’approbation” ». Notez que pour une colonne de choix, il faut descendre jusqu’à ['Value'] pour extraire la valeur, et que le nom de colonne est le nom interne, et non le nom affiché à l’écran (pour une colonne de texte sur une ligne, ['Value'] n’est pas nécessaire, comme dans @equals(triggerBody()?['Status'], 'demande d''approbation')). Si écrire l’expression à la main vous met mal à l’aise, la procédure documentée officiellement est fiable — placer temporairement dans le flux une action « Filtrer un tableau » (Filter array), construire la condition à l’écran, copier l’expression générée via « Modifier en mode détaillé », la coller dans les conditions de déclenchement, puis supprimer l’action.17

Cependant, les conditions de déclenchement n’arrêtent la boucle qu’à la condition que la réécriture par le flux lui-même rende la condition fausse. Pour un flux qui « se déclenche lorsque le statut est “demande d’approbation” », la conception doit inclure le fait de toujours terminer le traitement en mettant à jour le statut vers une autre valeur, comme « en cours de traitement » ou « approuvé ». Si le statut reste à « demande d’approbation » après la réécriture, cette même mise à jour rendra à nouveau la condition vraie, et les demandes d’approbation ou les notifications repartiront en boucle. Si une réécriture qui ne change pas la colonne utilisée dans la condition est absolument nécessaire, ajoutez une colonne d’indicateur « traité » et intégrez-la à la condition de déclenchement.

Si vous souhaitez élargir davantage le point d’entrée des saisies, une configuration où Microsoft Forms recueille les demandes et où un flux les transcrit dans la liste est efficace (« Créer un point d’entrée pour les demandes avec Microsoft Forms et Power Automate »). Par ailleurs, tout ce que couvre cet article peut se construire avec des connecteurs standard, mais dès que vous vous tournez vers Dataverse ou SQL, vous entrez dans le domaine de la licence premium.4 La frontière est détaillée dans « La frontière entre licence et connecteurs standard/premium dans Power Automate ».

7. Tableau de décision — rester sur Excel / migrer vers une liste / développer une application métier et une base de données

Situation Décision
Une à deux personnes mettent à jour, faible fréquence. Objectif principal : agrégation/analyse ou format d’impression Rester sur Excel. Ne pas forcer la migration
Plusieurs personnes ajoutent et mettent à jour au quotidien. Gestion du statut, du responsable, des échéances La migration vers une liste SharePoint a une grande valeur
Vouloir se connecter à la notification, l’approbation, la relance. Vouloir imposer un type de saisie Liste + Power Automate. La zone cible de cet article
Les références entre listes (client, dossier, détail…) s’étendent sur deux ou trois niveaux Les colonnes de référence deviennent difficiles à maintenir. Envisager une base de données comme Dataverse4
Volume de plusieurs centaines de milliers d’éléments, ou manipulations de vue au-delà de 5 000 éléments au quotidien Une base de données + application métier dès le départ revient moins cher que l’effort de conception d’une liste6
Mise à jour simultanée de plusieurs tables (commandes et stock, etc.) avec cohérence obligatoire Des transactions sont nécessaires. C’est le domaine d’un système métier (développement sous contrat)
Édition de documents, codes-barres, intégration avec des systèmes externes au cœur des besoins Une liste seule ne suffit pas. Envisager un système dédié ou un développement

Comme repère, tant qu’on peut encore parler de « registre », une liste suffit ; c’est un signal d’alarme dès qu’on commence à lui faire jouer le rôle d’un « substitut de système métier ». Quand les colonnes de référence se multiplient, que plusieurs flux s’enchevêtrent et que les vues de contournement du seuil se mettent à proliférer, le problème doit désormais être résolu par une base de données et une application métier. La qualité d’une liste, c’est de permettre d’exploiter en toute sécurité, avec des fonctionnalités standard à faible coût additionnel, les quelques années qui mènent jusque-là.

8. Conclusion

Le problème d’un registre Excel de dossier partagé n’est pas une question de vigilance des personnes, mais un problème structurel. Tant que le fichier entier reste l’unité d’édition, l’écrasement, le décalage de lignes et l’incertitude sur la version la plus récente se répéteront. En passant à une liste SharePoint, l’édition devient unitaire à la ligne, la saisie est typée, les modifications restent dans l’historique des versions, et les droits d’accès se répartissent par rôle.

En pratique, la migration repose surtout sur le « nettoyage des données » et la « conception des types de colonnes », plus que sur l’opération d’importation elle-même. Et en comprenant que le seuil de 5 000 est une limite de vue, et en préparant dès le départ des colonnes indexées et des vues filtrées, on peut l’utiliser longtemps et sereinement. Décidez de la répartition des rôles pour les pièces jointes avec la bibliothèque de documents, et laissez le calcul et la mise en page à Excel/Power BI. Un registre où cette répartition du travail est en place se développe, à partir des déclencheurs Power Automate, en un « registre vivant » qui gère automatiquement notifications, approbations et relances.

Et lorsque la liste commence à montrer ses limites, c’est le signe qu’il faut avancer vers Dataverse ou un système métier. Jusqu’où faire avec les fonctionnalités standard, et à partir d’où résoudre par le développement — nous prenons en charge cette réflexion sur la ligne de partage dès le stade du conseil.

Articles connexes

Domaines de conseil associés

合同会社小村ソフト (Komura Software LLC) prend en charge tout, depuis le conseil en conception pour la migration de registres Excel vers des listes SharePoint et l’intégration avec Power Automate, jusqu’au développement sous contrat de bases de données métier et d’applications métier lorsque la liste ne suffit plus.

Références

  1. Microsoft Learn, Manage the Lists app for your organization in Microsoft Teams. Sur le suivi des tâches, du matériel, des demandes, etc. dans Microsoft Lists, les vues, règles et alertes, la création de liste à partir d’un modèle, d’une liste existante ou de données importées d’un classeur Excel, et l’utilisation via un onglet Teams, le bureau, le web ou le mobile.  2 3 4 5 6

  2. Microsoft Learn, SharePoint - Connectors. Sur le fait que le connecteur SharePoint est de classe standard dans Power Automate, sur les déclencheurs comme « lorsqu’un élément est créé » ou « lorsqu’un élément est créé ou modifié », et sur la limite de 90 Mo pour les pièces jointes d’élément de liste que le connecteur peut traiter.  2 3 4 5

  3. Microsoft Learn, Use SharePoint and Power Automate to build workflows. Sur l’intégration entre Power Automate et SharePoint, les déclencheurs qui surveillent les modifications de listes et de bibliothèques, et des scénarios représentatifs comme les flux d’approbation et de relance.  2 3 4

  4. Microsoft Learn, List of all Premium tier connectors. Sur le fait que le connecteur Microsoft Dataverse est classé parmi les connecteurs de niveau premium.  2 3 4

  5. Microsoft Learn, SharePoint limits. Sur le fait qu’une liste peut stocker jusqu’à 30 millions d’éléments, que les pièces jointes d’un élément de liste vont jusqu’à 250 Mo par fichier, et que la rupture/reprise de l’héritage des droits n’est pas possible pour une liste ou un dossier dépassant 100 000 éléments.  2 3 4

  6. Microsoft Learn, “The number of items in this list exceeds the list view threshold” when you view lists in Microsoft 365. Sur le fait que le seuil d’affichage de liste est configuré par défaut à 5 000 éléments, et qu’une erreur d’affichage se produit en cas de dépassement.  2 3

  7. Microsoft Learn, “Cannot show the value of the filter” error when you try to sort or filter a column in SharePoint Online. Sur l’échec du tri et du filtrage en cas de dépassement du seuil, sur le contournement consistant à rester sous 5 000 éléments grâce aux colonnes indexées et aux vues filtrées, et sur la limite de 20 000 éléments pour l’ajout ou la suppression de colonnes indexées.  2 3 4

  8. Microsoft Learn (documentation de la communauté Microsoft 365), Versioning in SharePoint. Sur le fait que la gestion des versions est active dès la création d’une liste dans SharePoint Online (50 versions par défaut), que la date, l’auteur et la colonne modifiés sont enregistrés avec possibilité de restauration, et que les modifications des pièces jointes de liste ne sont pas versionnées.  2 3 4

  9. Microsoft Learn, What is Microsoft Dataverse?. Sur le fait que Dataverse est une plateforme de stockage et de gestion sécurisés des données utilisées par les applications métier, que les données sont conservées comme un ensemble de tables composées de lignes et de colonnes, que la sécurité basée sur les rôles permet un contrôle d’accès par table, et que les relations entre tables peuvent être utilisées directement depuis une application. 

  10. Microsoft Learn, Integrate SharePoint Online into Power Apps overview. Sur le fait que créer ou afficher une liste dans SharePoint redirige vers Microsoft Lists, que les deux permettent d’accéder à la même liste, et que la liste peut servir de source de données pour Power Apps. 

  11. Microsoft Learn, Connect to SharePoint from a canvas app. Sur la correspondance entre les types de colonnes d’une liste SharePoint (oui/non, date et heure, choix, référence, utilisateur, nombre, devise, texte sur une/plusieurs lignes, etc.) et les types de données de Power Apps.  2

  12. Microsoft Learn, Link lists using a lookup column in Power Apps. Sur la possibilité de relier une autre liste via une colonne de référence (lookup), et sur le fait qu’une colonne de choix convient mieux pour une liste courte et fixe.  2

  13. Support Microsoft, Add an index to a list or library column. Sur la procédure de création d’un index (Paramètres > Paramètres de la liste > Colonnes indexées > Créer un nouvel index), et sur le maximum de 20 colonnes indexées par liste ou bibliothèque. 

  14. Microsoft Learn, Create a report on a SharePoint List in Power BI Desktop. Sur la procédure de création d’un rapport en connectant Power BI Desktop à une liste SharePoint. 

  15. Microsoft Learn, Create a Power BI semantic model directly from a SharePoint list. Sur la possibilité de créer directement un modèle sémantique Power BI à partir d’une liste SharePoint, et sur le maintien des données à jour via une actualisation manuelle ou planifiée. 

  16. Microsoft Learn, Get started with approvals. Sur les bases de la fonctionnalité d’approbation de Power Automate, et sur le fait que le connecteur d’approbation est disponible en tant que connecteur standard. 

  17. Microsoft Learn, Customize your triggers with conditions. Sur la configuration des conditions de déclenchement pour le déclencheur SharePoint « lorsqu’un élément est créé ou modifié », le chemin d’accès à l’écran de configuration (Déclencheur > Paramètres > Conditions de déclenchement > Ajouter ; dans le concepteur classique, « … » > Paramètres), le fait qu’une expression commence par @, le fait que plusieurs conditions s’évaluent en ET et que le OU se regroupe avec @or(), le fait qu’un événement ne satisfaisant pas la condition ne déclenche aucune exécution et ne laisse aucune trace dans l’historique, et la procédure consistant à réutiliser l’expression générée par « Modifier en mode détaillé » de l’action Filter array.  2 3

Articles récents partageant les mêmes étiquettes, pour approfondir des sujets proches.

Ces pages replacent le sujet dans un contexte plus large de services et de décisions.

Cet article est directement lié aux services suivants.

Questions fréquentes

Questions souvent posées lors d’une consultation sur le sujet de cet article.

Une liste SharePoint ne peut-elle contenir que 5 000 éléments au maximum ?
Non. Les 5 000 éléments correspondent au seuil d'affichage de liste, une limite par défaut sur le nombre d'éléments qu'une seule vue (affichage, tri, filtrage) peut traiter à la fois. La liste elle-même peut stocker jusqu'à 30 millions d'éléments. Pour continuer à utiliser la liste au-delà de 5 000 éléments, il suffit d'indexer les colonnes utilisées pour le filtrage et de faire de la vue par défaut une vue toujours filtrée à moins de 5 000 éléments (par exercice, par responsable, etc.). L'ajout d'un index étant limité au-delà de 20 000 éléments, il est important de concevoir cela avant que la liste ne devienne volumineuse.
Peut-on créer directement une liste SharePoint à partir d'un fichier Excel ?
Oui. Microsoft Lists dispose d'une fonction qui lit les données d'un classeur Excel pour créer une liste, ce qui permet de partir d'un registre existant. Cependant, il faut au préalable défusionner les cellules, passer à une ligne par enregistrement, unifier la ligne d'en-tête et nettoyer les variations d'écriture. Par ailleurs, les types de colonnes comme les colonnes de choix, utilisateur ou date sont au cœur de la valeur d'une liste ; nous recommandons donc de décider de la conception des colonnes avant l'importation plutôt que de s'en remettre entièrement à celle-ci.
Dans quels cas peut-on rester sur un registre Excel ?
Lorsque la mise à jour est effectuée par une ou deux personnes à faible fréquence, lorsqu'il s'agit davantage d'une feuille d'agrégation et d'analyse que d'un véritable registre, ou lorsque l'objectif principal réside dans des formules complexes, des tableaux croisés dynamiques ou une mise en page d'impression, rester sur Excel ne pose généralement pas de problème. À l'inverse, un registre où plusieurs personnes ajoutent et mettent à jour au quotidien, où l'on gère un statut (en cours, terminé, etc.), où l'on veut suivre l'historique des modifications et le responsable, ou où l'on veut se connecter à des notifications ou des approbations, est adapté à une liste SharePoint.
Que permet Power Automate une fois passé à une liste SharePoint ?
Le connecteur SharePoint étant un connecteur standard, vous pouvez déclencher des flux cloud, dans le périmètre de votre licence Microsoft 365, à partir de déclencheurs comme « lorsqu'un élément est créé » ou « lorsqu'il est créé ou modifié ». Une notification Teams pour un nouvel enregistrement, un flux d'approbation déclenché par un changement de statut, ou une relance périodique des éléments en retard en sont des exemples représentatifs. Les données accumulées peuvent aussi être référencées depuis Excel ou Power BI pour l'agrégation et le reporting, si bien que le registre devient un pivot pour les notifications, les approbations et l'agrégation.

Profil de l’auteur

Page de présentation de l’auteur de l’article.

Go Komura

Représentant de KomuraSoft LLC

Spécialisé dans le développement de logiciels Windows, le conseil technique et l’analyse de pannes, notamment pour les systèmes existants et les incidents difficiles à reproduire.

Retour au blog