Un fichier CSVM peut être lu/édité avec un éditeur de texte ou un tableur, sous réserve de compatibilité avec les délimiteurs. En cas d’édition via un tableur, une table CSVM correspondra forcément à une seule feuille, en import ou en export. Microsoft Excel, LibreOffice, Gnumeric fonctionnent. Il existe aussi des outils, dédiés CSV, qui permettent d’avoir une vue tabulée et stable de fichiers CSVM, soit en tant que liseuse (File Viewer), soit en tant qu’éditeur. D’autres possibilités existent telles que des grapheurs scientifiques. Cet article fait une revue (nécessaire) de ces outils, dans le contexte d’une utilisation du format CSVM au quotidien.
Article mis à jour en octobre 2025
1. Avec un éditeur de texte
Le mieux est d’utiliser un éditeur de texte dédié à la programmation, tel que SciTE ou un autre IDE (Integrated Development Editor) mais qui permette de visualiser les tabulations et de changer leur largeur (en équivalent espaces). Ceci permet d’élargir la valeur des tabulations afin de bien séparer les colonnes. Plusieurs exemples de fichiers CSVM sous SciTE (nous voyons les tabulations sous forme de flèches grises ou de couleur) sont présentes dans les articles de ce blog.
A noter qu’un éditeur comme SciTE offre la possibilité de faire des sélections classiques (horizontales) mais aussi des sélections en mode vertical (touche Alt) pour des suppressions ou copies de colonnes. Nous pouvons également ajouter ou enlever (shift-tab) des tabulations à une sélection. Le tout combiné à un affichage qui utilise une police non proportionnelle (monospaced font) nous permet de faire beaucoup de petites opérations sur une table de données, sans recourir à d’autres logiciels.
2. Avec un tableur : Excel
Avec les anciennes versions d’Excel, dotées de l’assistant importation de texte, il faudra ouvrir tout type de fichiers (*.*) puis sélectionner Texte délimité (avec tabulations), sans identificateur de texte (doubles guillemets).
![]() |
Enfin, il faut mettre certaines colonnes en texte plutôt qu’en identificateur standard, si on ne veut pas qu’Excel les interprète, c’est le cas pour les dates, ou des formats de nombres (s’ils ne sont pas spécifiés, comme le séparateur décimal en virgule au lieu de point). Dans ces conditions nous obtenons un CSVM éditable. L’exemple montre une table CSVM avec le retour automatique des lignes activé (on le voit en rouge dans la valeur de #META et les valeurs de la colonne ‘smi‘) ce qui peut être plus pratique pour l’édition.
![]() |
Pour sauver le fichier, il faudra utiliser le format Texte (séparateur : tabulation (*.txt) qui est plus sûr que les autres formats, et nous obtiendrons un fichier CSVM correspondant à (visualisation avec SciTE) :
![]() |
Nous constatons que Excel a ajouté des tabulations pour obtenir le nombre de colonnes correspondant au bloc de métadonnées. On peut reprendre un éditeur de texte pour modifier ces items. Si celui-ci permet le travail sur les tabulations et les fins de lignes nous pouvons les éliminer. Par exemple, dans SciTE il faudra activer les expressions régulières (regex) et remplacer \t\r par \r, jusqu’à ce qu’il ne reste plus de tabulations.
Avec les versions plus récentes d’Excel, il sera préférable d’utiliser l’onglet Données > A partir d’un fichier Texte/CSV qui déclenche un assistant d’importation qui a évolué.
3. Avec un tableur : LibreOffice
Avec LibreOffice Calc, il suffit d’ouvrir un fichier (*.*) puis l’assistant import de texte s’affiche, en principe les valeurs par défaut suffisent pour charger le fichiers :
![]() |
La table CSVM se charge en optimisant la largeur des colonnes pour contenir le texte. Il est également possible d’activer le renvoi automatique à la ligne. Dans ce cas il faut sélectionner les cellules, puis menu Format > Formatage des cellules > Onglet: Alignement et sélectionner Renvoi à la ligne automatique (ou équivalent). Par exemple dans LibreOffice, nous aurons :
![]() |
Pour la sauvegarde, il faut exporter en CSV en affichant le filtre d’export, pour valider que le séparateur de champ est bien {Tabulation}. Le résultat sera similaire à celui d’Excel.
4. Avec CSVFileView (Nirsoft)
CSVFileView est une liseuse freeware sous Windows et qui fait l’objet d’un autre article [ CSVM : CSVFileView une liseuse presque parfaite ]. Dans le cas d’un ilot de données d’un milliers de lignes, le chargement est instantané, en focalisant sur la dernière partie du fichier, nous obtenons :
![]() |
Nous constatons que le bloc de métadonnées est conservé, ainsi que la ligne rule (première ligne de commentaires reproduisant le nom des colonnes de la ligne #HEADER) qui est prise en compte par la liseuse. Faisant partie d’une suite d’utilitaires pour l’administration système, ce programme était adapté pour les fichiers de log. CSVFileView ne permet pas d’éditer mais c’est une liseuse légère et très efficace.
5. Avec Rons Data Edit
Rons Data Edit (RDE) est un outil permettant l’édition CSV sous Windows, sans passer par un tableur, avec de nombreuses fonctionnalités. Cet outil inclue des niveaux de licence qui débloquent des options, nous testons ici la version LITE (libre). Avec RDE (version d’évaluation) la lecture du même fichier est également très rapide (moins de deux secondes) et nous donnera le résultat suivant :
![]() |
Comme notre fichier test incluait une ligne rule, les deux outils (CSVFileView et RDE) ont déterminé qu’il ne s’agissait pas d’une ligne de données et l’utilisent pour les titres de colonnes, ce qui facilite l’édition et annule la problématique de décalage entre les blocs données et métadonnées.
6. Avec Modern CSV
Modern CSV Editor (MCE) existe sur plateforme Windows, Mac et Linux et peut être utilisé en tant que liseuse ou éditeur. Cet outil inclue également des niveaux de licence qui débloquent des options. La lecture des fichiers CSVM tabulés est native, les commentaires sont gardés et inclus dans la première colonne avec un retour automatique du texte. Si on veut les éditer, le programme élargit automatiquement la colonne pour avoir la totalité de la cellule correspondante.
![]() |
Avec la version de base il est également possible de transformer la ligne rule du fichier CSVM en ligne Headers de la table qui va rester visible avec le scrolling. C’est ce que l’on voit ici, avec la ligne en rouge, sur un affichage de la fin de la table (le bloc de métadonnées CSVM est sélectionné).
![]() |
L’export au format TSV (Tab Separated Values) conserve toutes les lignes marquées par un caractère # : commentaires et métadonnées. Contrairement aux tableurs, au niveau des données exportées, MCE produit n’intègrera de colonnes supplémentaires (fantômes) au niveau des données et des commentaires (dues à la cohérence avec la table et les métadonnées). Le programme permet de gérer des métadonnées liées au fichier, notamment le type de format CSV et l’encodage des caractères (incluant différentes déclinaisons ISO8859) ce qui peut être utile en cas de caractères accentués. On notera aussi que MCE est capable d’import/export en mode XML et Json pour des données tabulaires.
7. Avec un grapheur scientifique
Typiquement il s’agit de dérivés d’Origin ou SigmaPlot, par exemple QTiPlot, SciDAVis, LabPlot … dédiés aux graphismes scientifiques. En général, cela ne marche pas bien car ces outils font une vérification sur le nombre des colonnes et le type des données. Dans ce cas il vaut mieux transformer la table CSVM en CSV, soit manuellement en supprimant le bloc de métadonnées, soit via l’API Python, ou encore un copier-coller de SciTE vers le grapheur. Avec souvent une problématique d’interprétation liée aux données textuelles ou booléennes.
Mais Labplot2 s’en tire très bien, il élimine les commentaires avant de vérifier l’intégrité des colonnes, ce qui fait que le bloc de métadonnées ne pose pas de problèmes. En mode d’import ASCII, il reconnait parfaitement le type des colonnes et leur affecte un type étonnamment équivalent à la terminologie CSVM : {Texte} (colonnes ‘Text‘, ‘Boolean‘) et {Numérique} ou {Entier} (colonnes ‘Numeric‘). Nous pouvons donc directement générer des graphes sur les données numériques, par exemple :
![]() |
Nous constatons ici que notre stock de produit est en baisse … Sur la collection correspondant à une table de 240 produits, beaucoup sont présents mais avec des quantités inférieures à 20g dans le stock.
8. Avec un tableur : Gnumeric
Disponible sous Linux et Windows, simplifié, antique mais toujours présent … Gnumeric importe le CSVM sans problème et sans paramétrage. Il n’y a pas d’import, juste ouvrir un fichier, nativement il récupère tout : commentaires, métadonnées, données sans interprétations, et dans les bonnes cellules. Par exemple pour une fin de fichier avec un bloc de métadonnées et un commentaire solitaire (ligne 286), nous aurons :
![]() |
Gnumeric est capable d’exporter en texte délimité par des tabulations, ou CSV classique (virgules) mais il faut le déclencher à partir du menu Données. Mais comme les autres tableurs nous avons des colonnes fantômes, dues à la cohérence de la table. Au final, il s’agit d’un outil très intéressant, mais peu de monde utilise Gnumeric en sciences de la vie et chimie, mais c’est également un bon choix pour éditer du CSVM en mode grille.
9. En créant un composant dédié ?
Gnumeric étant basé sur Gnome il utilise des composants logiciels de la bibliothèque Gtk+3.x donc on peut espérer trouver une grille façon tableur dans le toolkit, à interfacer avec Python et CSVM. Mais le numéro de version n’est pas anodin, il faut noter qu’entre GTK3 et GTK4 la programmation des widgets est significativement différente pour ce type d’applications. Si nous voulons éviter GTK, nous avons Qt avec une stabilité de programmation entre Qt5 et Qt6 et un composant QTableWidget. Dans le passé nous l’avons fait avec wxPython, en wx nous avons wx.grid qui se programme très simplement aussi. Ces boites à outils de widgets existent à la fois sous Windows et Linux et Mac OS.
10. Conclusion
L’article ne se veut pas exhaustif mais il montre bien qu’il y a une diversité de solutions multi plateformes (Windows et Linux) et que l’on peut les utiliser pour éditer du CSV tabulé ou du CSVM. De fait, développer un éditeur CSVM ne correspond pas à une nécessité qui serait de niveau critique. Si nous le faisions, l’intérêt principal serait de gérer le bloc de données et de métadonnées à part, mais avec une correspondance des colonnes, et d’utiliser des lignes entières, indépendantes de la grille pour des commentaires.
Liens et lectures
- CSVFileView v2.65 – CSV / Tab-delimited file viewer and converter for Windows [ https://www.nirsoft.net/utils/csv_file_view.html ].
- Rons Data Edit – CSV & Tabular Text Editor for Windows [ https://www.ronsplace.ca/products/ronsdataedit ].
- Modern CSV [ https://www.moderncsv.com/ ].
- LabPlot [ https://labplot.org/ ].
- Gnumeric [ https://en.wikipedia.org/wiki/Gnumeric ].
- Gnumeric [ https://gnome.pages.gitlab.gnome.org/gnumeric-web/ ] et [ https://gnome.pages.gitlab.gnome.org/gnumeric-web/announcements/1.12/gnumeric-1.12.html ].
- GTK [ https://en.wikipedia.org/wiki/GTK ].
- Glade [ https://fr.wikipedia.org/wiki/Glade ].
- Qt (software) [ https://en.wikipedia.org/wiki/Qt_(software) ].
- WxPython [ https://en.wikipedia.org/wiki/WxPython ].










