Utiliser Google Sheets comme base de données : les six limites qu'on finit par rencontrer
Six limites structurelles, de l'absence de type au lien qu'aucune formule ne garantit. Et les cas où il faut garder sa feuille.
En résumé : Google Sheets ne refuse presque rien. C'est sa force et c'est exactement le problème. Une base de données garantit des choses : un type, une unicité, une permission, une trace. Une feuille de calcul n'en garantit aucune. Les six limites ci-dessous ne sont pas des bugs à contourner, ce sont les endroits où un tableur ne peut structurellement pas vous aider.
1. Aucun type n'est garanti
Vous avez décidé qu'une colonne contient des dates. Sheets n'a jamais accepté ce contrat. Quelqu'un saisit « 14 mars », un autre colle « 14/03/26 » depuis un mail, un troisième tape « mi-mars ». Les trois sont acceptés, et deux d'entre eux ne se trieront jamais correctement.
La validation de données existe, mais elle s'applique à une plage que vous avez définie à la main. Insérez une ligne au-dessus, collez 200 lignes d'un coup, dupliquez l'onglet : la règle ne suit pas toujours. Vous n'avez pas un type, vous avez une convention que l'équipe respecte quand elle y pense.
2. Rien n'empêche un doublon
« Café Malin » et « Cafe Malin » sont deux clients différents pour votre feuille. Vous vous en apercevez le jour où vous comptez votre chiffre par client et où le total ne tombe pas juste.
Un tableur n'a pas de notion d'identifiant unique. Vous pouvez ajouter une formule qui colore les doublons, mais elle les signale après coup, elle ne les refuse pas. La différence est décisive : une base de données rejette l'écriture, une feuille la garde et vous laisse la nettoyer.
3. Les permissions s'arrêtent à la feuille
Le partage Google est excellent au niveau du fichier. Il n'existe pas au niveau de la ligne. Si votre comptable externe doit voir les montants mais pas les marges, ou si chaque commercial ne doit voir que ses clients, vous n'avez que deux options : dupliquer le fichier, ou masquer des colonnes.
Masquer une colonne n'est pas une permission. Elle est masquée à l'affichage, pas à l'export, pas à l'historique, pas à un IMPORTRANGE depuis un autre fichier. La duplication, elle, crée une deuxième version de la vérité, et à partir de là vous ne savez plus laquelle est à jour.
4. Une formule volatile fait payer tout le fichier
Une cellule qui contient MAINTENANT(), IMPORTRANGE, GOOGLEFINANCE ou un ARRAYFORMULA étalé sur une colonne entière ne se recalcule pas toute seule dans son coin : elle participe à un graphe de dépendances que Sheets réévalue. C'est pour ça qu'un fichier de 4 000 lignes peut être plus lent qu'un fichier de 40 000.
Le nombre de lignes est un mauvais indicateur. Ce qui compte, c'est le nombre de cellules calculées et leur volatilité. On détaille à partir de combien de lignes un Sheet ralentit dans un article dédié.
5. L'historique existe, mais il n'est pas interrogeable
Sheets conserve l'historique des versions, et vous pouvez afficher l'historique d'une cellule. Essayez maintenant de répondre à : « qui a passé cette commande en Livré, et quand ? » sur une ligne précise, six mois plus tard, sans connaître la date approximative.
Vous allez remonter des versions à la main. L'information est là, elle n'est simplement pas adressable. Une base de données répond à cette question par une requête ; un tableur y répond par une archéologie.
6. Aucun lien garanti entre deux onglets
Vous avez un onglet Clients et un onglet Commandes, reliés par un RECHERCHEV. Ce lien n'est pas un lien : c'est une formule qui suppose que la clé existe. Supprimez un client, renommez-le, insérez une colonne dans l'onglet source, et vous obtenez des #N/A. Ou pire, une correspondance décalée qui ne dit rien et qui est fausse.
L'intégrité référentielle, c'est justement la garantie qu'une commande ne peut pas pointer vers un client qui n'existe pas. Aucun tableur ne la fournit.
Et les limites chiffrées ?
Elles existent, mais elles arrivent presque toujours en dernier :
| Limite | Plafond |
|---|---|
| Cellules par fichier | 10 millions |
| Colonnes par feuille | 18 278 |
| Caractères par cellule | 50 000 |
| Édition simultanée | 100 onglets ou appareils |
Si vous cherchez un plafond en nombre de lignes, il n'y en a pas : Google raisonne en cellules. Et dans la pratique, un fichier devient insupportable à utiliser bien avant d'approcher ces chiffres.
Quand Sheets reste le bon outil
Soyons clairs, parce que la moitié des articles sur le sujet vous vend une migration dont vous n'avez pas besoin. Gardez votre feuille si :
- une seule personne y écrit, même si dix la consultent ;
- vous faites du calcul, de l'analyse, du tableau croisé, car c'est là que Sheets est imbattable ;
- la donnée est jetable : un budget d'événement, une liste de courses, un tri ponctuel ;
- vous n'avez aucune règle à faire respecter.
Si votre feuille est justement une liste de commandes, un modèle de suivi de commandes vous donne les colonnes déjà typées.
Le basculement se joue sur une question simple : votre feuille est-elle un calcul ou un registre ? Un calcul, gardez-le dans Sheets. Un registre partagé, alimenté par plusieurs personnes, avec des règles, c'est une base de données, et le choix se décide en quatre questions.
La bonne nouvelle : ce n'est pas un choix binaire. Vous pouvez tenir le registre dans une vraie base et continuer à faire vos calculs dans Sheets, en gardant le fichier alimenté automatiquement. C'est exactement ce que fait Rowbase : la saisie est typée et attribuée, et chaque ligne repart dans votre Google Sheet en quelques secondes. Vos formules et vos graphiques ne bougent pas.
Questions fréquentes
Combien de lignes un Google Sheet peut-il contenir ? Il n'y a pas de limite en lignes, seulement un plafond de cellules par fichier. Le confort d'utilisation se dégrade bien avant, et il dépend de vos formules, pas de votre nombre de lignes.
La validation de données ne suffit-elle pas à typer une colonne ? Elle aide, mais elle s'applique à une plage définie manuellement et ne survit pas toujours aux insertions, aux copier-coller massifs ou aux duplications d'onglet. Ce n'est pas une garantie.
Peut-on donner accès à une seule ligne dans Google Sheets ? Non. Les protections s'appliquent à une feuille ou à une plage, et masquer n'est pas protéger. Il faut dupliquer le fichier, ce qui crée une deuxième source de vérité.
Faut-il migrer dès qu'on rencontre une de ces limites ? Non. Une seule limite gênante et contournable ne justifie pas une migration. Deux ou trois qui reviennent chaque semaine, oui.
Testez sur votre vraie liste.
14 jours, sans carte bancaire. Import CSV depuis Airtable en deux minutes.