Supprimer les styles de cellules

Supprimer les styles de cellules

Dernière mise à jour le 27/08/2023
Temps de lecture : 3 minutes

Une des raisons pour laquelle un classeur est très volumineux c'est à cause d'un grand nombre de styles de cellules personnalisés.

Classeur avec de nombreux styles de cellule personnalisés

Il est possible de supprimer chaque style un par un en faisant un clic-droit.

Mais si le nombre de styles est très important, il existe une technique pour les supprimer tous en travaillant au niveau du xml.

Mise en garde

La technique décrite ici va consister à éditer et modifier le fichier XML du classeur Excel.

Si la moindre erreur de caractère est effectuée, le classeur sera corrompu et vos données perdues. Faîtes donc très attention aux modifications que vous allez effectuer❗

Méthode pour supprimer tous les styles de cellules

  1. Dupliquez le classeur dans lequel vous souhaitez supprimer tous les styles de cellules personnalisés
Dupliquer le fichier à nettoyer
  1. Renommer l'extension de la sauvegarde en .zip
Renommer lextension en zip
  1. Double-cliquez sur le fichier zipper pour ouvrir toute l'architecture XML du fichier.
  2. Dans le répertoire xl, copiez le fichier styles.xml et collez le dans un répertoire séparer ou sur le bureau
Fichier styles.xml dans le fichier zippé
  1. Ouvrez le fichier dans un éditeur de texte (ici Notepad++) avec son l'extension XML Tool pour visualiser la hiérarchie du fichier XML
  2. Recherchez la balise cellStyles. Notez au passage le nombre de styles de cellules que votre classeur contient (ici 70 styles personnalisés)
Balise cellStyles dans le fichier styles.xml 1
  1. Supprimez toutes les lignes entre les balises <cellStyles> et </cellStyles>, y compris les balises
Suppression du bloc cellStyles
  1. Sauvegardez le fichier styles.xml
  2. Ré-importez le fichier styles.xml dans le fichier zipper et bien sûr dans le même répertoire ; le répertoire xl
Transférer le fichier dans le fichier zippé
  1. Changez l'extension du fichier zip en xlsx (l'inverse de l'étape 2)
  2. Ouvrez le fichier et tous les styles de cellules personnalisées ont été supprimés 😍😎😀
Le fichier est ouvert sans les styles de cellules personnalisés

D'où viennent ces styles ?

  • En fait, on retrouve ce genre de problème avec des classeurs créés avec l'extension xls. Et ce cas arrive plus souvent qu'il n'y paraît.
  • Au moment de la conversion d'un fichier xls vers un fichier xlsx, les cellules avec des styles particuliers ont été converti en style de cellules personnalisés.
  • Ces styles sont automatiquement importés dans un classeur quand une feuille de calcul est importée depuis un autre classeur avant Excel 2013.

7 Comments

  1. Hajer
    20/12/2022 @ 09:39

    Bonjour,

    L’extraction du rapport sort avec le message d’erreurs et format différent du rapport habituel.

    "fonction supprimée: format dans la partie /xl/styles.xml (styles)"

    Ce problème ne se reproduit que pour certains utilisateurs, d'autres non (même si les utilisateurs ont la même version et les mêmes plugins Excel).

    Avez-vous svp une idée sur ce sujet?

    Reply

    • Frédéric LE GUEN
      20/12/2022 @ 10:46

      Non, pas la moindre idée

      Reply

  2. Emile
    28/10/2021 @ 16:50

    Bonjour,
    ou alors, en VBA 🙂

    Sub SupprStyles()
    Dim St As Style
    For Each St In ActiveWorkbook.Styles
    If Not St.BuiltIn Then St.Delete
    Next St
    End Sub

    Reply

    • Frédéric LE GUEN
      28/10/2021 @ 17:36

      Moouuui ... Oui c'est exact mais ça nécessite que l'utilisateur connaisse déjà l'interface de l'éditeur VBA (et je peux vous assurer que ce n'est pas le cas de tout le monde)
      Ensuite, avec la technique que je décris, on connait le nombre de style existant. Et surtout, et malgré que j'ai écris un livre sur les macros aux éditions ENI, Microsoft ne va pas conserver le VBA dans les années futures. Donc, nulle part dans mon site je parle de VBA quand il existe une autre solution.

      Reply

      • Emile
        28/10/2021 @ 17:51

        C'est clair, mais c'était très court à écrire alors je n'ai pas pu résister 🙂
        trés bon site sur Excel, merci pour ces astuces !

  3. RPM
    06/05/2021 @ 11:01

    Merci je vous dois une fière chandelle ; j'avais commencé à enlever les styles 1 par 1... en consultant le xml, j'ai vu qu'il y en avait 15020
    🙂

    Reply

    • Frédéric LE GUEN
      06/05/2021 @ 11:19

      Content que ça vous ai aidé. Ce n'est évidemment pas l'article le plus populaire de mon blog vu sa complexité technique, mais face à ce genre de situation, j'ai bien été obligé d'expliquer l'astuce pour nettoyer complètement un fichier de ses styles.

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Supprimer les styles de cellules

Reading time: 3 minutes
Dernière mise à jour le 27/08/2023

Une des raisons pour laquelle un classeur est très volumineux c'est à cause d'un grand nombre de styles de cellules personnalisés.

Classeur avec de nombreux styles de cellule personnalisés

Il est possible de supprimer chaque style un par un en faisant un clic-droit.

Mais si le nombre de styles est très important, il existe une technique pour les supprimer tous en travaillant au niveau du xml.

Mise en garde

La technique décrite ici va consister à éditer et modifier le fichier XML du classeur Excel.

Si la moindre erreur de caractère est effectuée, le classeur sera corrompu et vos données perdues. Faîtes donc très attention aux modifications que vous allez effectuer❗

Méthode pour supprimer tous les styles de cellules

  1. Dupliquez le classeur dans lequel vous souhaitez supprimer tous les styles de cellules personnalisés
Dupliquer le fichier à nettoyer
  1. Renommer l'extension de la sauvegarde en .zip
Renommer lextension en zip
  1. Double-cliquez sur le fichier zipper pour ouvrir toute l'architecture XML du fichier.
  2. Dans le répertoire xl, copiez le fichier styles.xml et collez le dans un répertoire séparer ou sur le bureau
Fichier styles.xml dans le fichier zippé
  1. Ouvrez le fichier dans un éditeur de texte (ici Notepad++) avec son l'extension XML Tool pour visualiser la hiérarchie du fichier XML
  2. Recherchez la balise cellStyles. Notez au passage le nombre de styles de cellules que votre classeur contient (ici 70 styles personnalisés)
Balise cellStyles dans le fichier styles.xml 1
  1. Supprimez toutes les lignes entre les balises <cellStyles> et </cellStyles>, y compris les balises
Suppression du bloc cellStyles
  1. Sauvegardez le fichier styles.xml
  2. Ré-importez le fichier styles.xml dans le fichier zipper et bien sûr dans le même répertoire ; le répertoire xl
Transférer le fichier dans le fichier zippé
  1. Changez l'extension du fichier zip en xlsx (l'inverse de l'étape 2)
  2. Ouvrez le fichier et tous les styles de cellules personnalisées ont été supprimés 😍😎😀
Le fichier est ouvert sans les styles de cellules personnalisés

D'où viennent ces styles ?

  • En fait, on retrouve ce genre de problème avec des classeurs créés avec l'extension xls. Et ce cas arrive plus souvent qu'il n'y paraît.
  • Au moment de la conversion d'un fichier xls vers un fichier xlsx, les cellules avec des styles particuliers ont été converti en style de cellules personnalisés.
  • Ces styles sont automatiquement importés dans un classeur quand une feuille de calcul est importée depuis un autre classeur avant Excel 2013.

7 Comments

  1. Hajer
    20/12/2022 @ 09:39

    Bonjour,

    L’extraction du rapport sort avec le message d’erreurs et format différent du rapport habituel.

    "fonction supprimée: format dans la partie /xl/styles.xml (styles)"

    Ce problème ne se reproduit que pour certains utilisateurs, d'autres non (même si les utilisateurs ont la même version et les mêmes plugins Excel).

    Avez-vous svp une idée sur ce sujet?

    Reply

    • Frédéric LE GUEN
      20/12/2022 @ 10:46

      Non, pas la moindre idée

      Reply

  2. Emile
    28/10/2021 @ 16:50

    Bonjour,
    ou alors, en VBA 🙂

    Sub SupprStyles()
    Dim St As Style
    For Each St In ActiveWorkbook.Styles
    If Not St.BuiltIn Then St.Delete
    Next St
    End Sub

    Reply

    • Frédéric LE GUEN
      28/10/2021 @ 17:36

      Moouuui ... Oui c'est exact mais ça nécessite que l'utilisateur connaisse déjà l'interface de l'éditeur VBA (et je peux vous assurer que ce n'est pas le cas de tout le monde)
      Ensuite, avec la technique que je décris, on connait le nombre de style existant. Et surtout, et malgré que j'ai écris un livre sur les macros aux éditions ENI, Microsoft ne va pas conserver le VBA dans les années futures. Donc, nulle part dans mon site je parle de VBA quand il existe une autre solution.

      Reply

      • Emile
        28/10/2021 @ 17:51

        C'est clair, mais c'était très court à écrire alors je n'ai pas pu résister 🙂
        trés bon site sur Excel, merci pour ces astuces !

  3. RPM
    06/05/2021 @ 11:01

    Merci je vous dois une fière chandelle ; j'avais commencé à enlever les styles 1 par 1... en consultant le xml, j'ai vu qu'il y en avait 15020
    🙂

    Reply

    • Frédéric LE GUEN
      06/05/2021 @ 11:19

      Content que ça vous ai aidé. Ce n'est évidemment pas l'article le plus populaire de mon blog vu sa complexité technique, mais face à ce genre de situation, j'ai bien été obligé d'expliquer l'astuce pour nettoyer complètement un fichier de ses styles.

      Reply

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.