Fichiers Excel : un classeur est un ZIP de XML, et un PDF ne contient aucun tableau
Ce que contient un XLSX, pourquoi tirer un tableau d’un PDF est une déduction et non une extraction, et quelles cellules deviennent des nombres.
En bref
- Type
- Documents
- Extensions
- .xlsx
- Type MIME
- application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
- Également appelé
- XLSX, Microsoft Excel, spreadsheet
Un fichier .xlsx est une archive ZIP de XML, construite comme le .docx décrit sur la page Word et issue du même passage à Office Open XML en 2007. Renommez-en un en .zip et vous trouverez une partie « classeur » qui liste les feuilles, une partie par feuille contenant les cellules, une partie pour les styles, et les fichiers de relations qui relient le tout. Comme c’est du XML dans un ZIP, un classeur peut être écrit sans aucun code Microsoft, et c’est ce que fait ce site — cinq parties XML générées directement plutôt qu’une bibliothèque de tableur ajoutée au code. Le texte des cellules est inséré en chaîne en ligne, si bien que chaque feuille est autonome, et les plafonds sont ceux d’Excel lui-même : 1 048 576 lignes, 16 384 colonnes, 255 feuilles.
Lire la suite
La difficulté est entièrement de l’autre côté. Un PDF ne contient pas de tableaux. Il contient des suites de glyphes, chacune avec sa position, et les traits que vous voyez sont des opérations de dessin sans lien avec elles — rien dans le fichier n’indique qu’une cellule existe, et encore moins quel texte lui appartient. La grille doit donc être déduite de la géométrie, ce que fait réellement tout outil de ce genre, y compris ceux qui le font payer.
La déduction se fait en deux étapes. Les lignes viennent des lignes de base communes : c’est la moitié fiable, puisque c’est ainsi que la page a été composée au départ. Les colonnes viennent des étendues horizontales qui se chevauchent, et une bande doit revenir sur plusieurs lignes pour compter comme colonne — c’est la récurrence qui distingue une vraie colonne d’un paragraphe qui se trouve être en retrait. Les bords gauches seuls ne suffisent pas, et cela vaut d’être noté car c’est la première implémentation qui vient à l’esprit et elle échoue sur le tableau le plus ordinaire qui soit : une colonne de quantités alignées à droite contenant 6, 96 et 240 a trois bords gauches différents, décalés d’un chiffre chacun, si bien que la colonne se scinde et que chaque ligne se retrouve avec une cellule vide parasite. Le chevauchement gère l’alignement à gauche, à droite et centré sans avoir besoin de savoir lequel il a sous les yeux.
Ce qui devient un nombre dans une cellule est volontairement restreint : des décimaux simples, éventuellement signés, et rien d’autre. 007, 1,234, 2026-09-10, +44 20 et tout ce qui porte un symbole monétaire restent exactement tels qu’ils apparaissaient, car un zéro initial, un séparateur de milliers et une date sont autant d’informations qu’une conversion forcée détruirait. Les décimales sont conservées : 48.50 arrive en 48.50 et non en 48.5. Les limites sont indiquées sur la page au lieu d’être cachées : les cellules fusionnées ressortent dans la première colonne qu’elles couvrent, une cellule dont le texte passe sur deux lignes devient deux lignes, une feuille est produite par page, et une page sans structure de colonnes récurrente revient sous forme d’une seule colonne de lignes — la réponse honnête pour de la prose.
Convertir d’autres formats en Excel
FAQ : Excel
Un XLSX est-il vraiment un fichier ZIP ?
Oui, exactement comme un DOCX. Renommez-le en .zip et ouvrez-le : à l’intérieur, des parties XML pour le classeur, pour chaque feuille, pour les styles, et les relations entre elles.
Les nombres pourront-ils vraiment être additionnés ?
Oui, pour les cellules qui sont de simples décimaux — elles sont écrites comme nombres, donc SOMME et les autres fonctions s’y appliquent. Tout ce qui est ambigu reste volontairement du texte, et du texte ne s’additionne pas.
Pourquoi mon numéro de référence 007 est-il arrivé en texte ?
Parce que le zéro initial est une information. Le stocker comme nombre le transformerait en 7 sans aucun moyen de revenir en arrière : les valeurs qui ont seulement l’air numériques restent donc exactement telles qu’elles apparaissaient.
Mon tableau a perdu ses limites de colonnes. Pourquoi ?
Les colonnes sont reconnues à des étendues de cellules qui se chevauchent et reviennent d’une ligne à l’autre. Un tableau d’une ou deux lignes seulement, ou dont les cellules sont placées de façon irrégulière, ne donne rien à quoi la déduction puisse s’accrocher, et il revient sous forme de lignes de texte.
Cela fonctionne-t-il avec un PDF scanné ?
Non, et il refuse plutôt que de deviner. La reconnaissance renvoie une ligne de texte par zone détectée, ce qui suffit pour reconstruire de la prose mais pas une grille — les zones fusionnent assez souvent des cellules voisines pour que le résultat ressemble à un tableau tout en étant faux.
Puis-je convertir Excel en PDF ici ?
Pas en local. Afficher un classeur comme le fait Excel — sauts de page, zones d’impression, largeurs de colonnes — demande Excel ou LibreOffice, et aucun des deux ne tourne dans un onglet de navigateur. Les conversions proposées ici vont vers le XLSX, et non depuis le XLSX.