1. #1
    Membre du Club
    Homme Profil pro
    Employé en comptabilité analytique
    Inscrit en
    juin 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Employé en comptabilité analytique
    Secteur : Bâtiment

    Informations forums :
    Inscription : juin 2016
    Messages : 93
    Points : 60
    Points
    60

    Par défaut Format d'en-tête de tableau impossible à changer

    Bonjour,

    Je souhaite changer le format de certaines en-tête de tableau, par exemple "mmmm aaaa" pour afficher "janvier 2017", mais le changement de format n'a aucun effet sur l'affichage.

    Je dois appliquer le format à une cellule en dehors du tableau et copier cette cellule dans l'en-tête pour arriver à mes fins...

    Quelqu'un ou quelqu'une aurait-elle ou -il une solution plus orthodoxe?

    Cordialement

  2. #2
    Responsable
    Office & Excel

    Avatar de Pierre Fauconnier
    Homme Profil pro
    Formateur et développeur informatique indépendant
    Inscrit en
    novembre 2003
    Messages
    9 918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur informatique indépendant
    Secteur : Enseignement

    Informations forums :
    Inscription : novembre 2003
    Messages : 9 918
    Points : 23 852
    Points
    23 852
    Billets dans le blog
    4

    Par défaut

    Salut.

    Si tu parles d'entêtes de tables de données, ce n'est pas possible, car Excel convertit en texte les valeurs qui sont saisies dans la ligne d'intitulé.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Vous souhaitez rédiger pour DVP? Contactez-moi
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    N'oubliez pas de VOTER (en bas à droite d'un message)
    ---------------

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    6 727
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : juin 2007
    Messages : 6 727
    Points : 12 109
    Points
    12 109

    Par défaut

    Citation Envoyé par Dédé6621 Voir le message
    Je souhaite changer le format de certaines en-tête de tableau, par exemple "mmmm aaaa" pour afficher "janvier 2017", mais le changement de format n'a aucun effet sur l'affichage.
    Sans doute parce que le contenu de ta cellule n'est pas une VRAIE date mais du texte ressemblant à une date.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  4. #4
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    février 2010
    Messages
    3 985
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : février 2010
    Messages : 3 985
    Points : 7 201
    Points
    7 201

    Par défaut

    Bonjour

    Pour compléter la remarque de Pierre, tu peux éventuellement contourner en masquant la ligne de titre du tableau et en utilisant une ligne hors tableau pour les dates.

    Cependant l'intérêt dépend de la finalité de ces dates...
    Chris

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  5. #5
    Responsable
    Office & Excel

    Avatar de Pierre Fauconnier
    Homme Profil pro
    Formateur et développeur informatique indépendant
    Inscrit en
    novembre 2003
    Messages
    9 918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur informatique indépendant
    Secteur : Enseignement

    Informations forums :
    Inscription : novembre 2003
    Messages : 9 918
    Points : 23 852
    Points
    23 852
    Billets dans le blog
    4

    Par défaut

    Citation Envoyé par Menhir Voir le message
    Sans doute parce que le contenu de ta cellule n'est pas une VRAIE date mais du texte ressemblant à une date.
    Ca ne sera jamais une vraie date dans une table de données. Excel convertit les valeurs numériques et les formules en texte (après calcul pour ce qui concerne les formules).
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Vous souhaitez rédiger pour DVP? Contactez-moi
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    N'oubliez pas de VOTER (en bas à droite d'un message)
    ---------------

  6. #6
    Membre du Club
    Homme Profil pro
    Employé en comptabilité analytique
    Inscrit en
    juin 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Employé en comptabilité analytique
    Secteur : Bâtiment

    Informations forums :
    Inscription : juin 2016
    Messages : 93
    Points : 60
    Points
    60

    Par défaut

    Merci pour vos réponses.

    Citation Envoyé par Pierre Fauconnier Voir le message
    Si tu parles d'entêtes de tables de données, ce n'est pas possible, car Excel convertit en texte les valeurs qui sont saisies dans la ligne d'intitulé.
    Si par table de données, tu entends ce qui sert à comparer des scénarios (Calculer plusieurs résultats à l’aide d’une table de données), je ne connaissais pas. Merci, j'apprends quelque chose.

    Mais il ne s'agit pas de ça. Il s'agit juste d'un bête tableau (Création ou suppression d’un tableau Excel).

    Citation Envoyé par Menhir Voir le message
    Sans doute parce que le contenu de ta cellule n'est pas une VRAIE date mais du texte ressemblant à une date.
    Le contenu non formaté de ma cellule est: "01.01.2017" que je m'attendais devenir: "janvier 2017".

    Citation Envoyé par 78chris Voir le message
    Pour compléter la remarque de Pierre, tu peux éventuellement contourner en masquant la ligne de titre du tableau et en utilisant une ligne hors tableau pour les dates.
    Sans offense, ça me semble catastrophique point de vue présentation. Un copier-coller me paraît plus sain à côté.

    Pour revenir aux commentaires de Pierre Fauconnier, en créant un tableau à en-tête (et non une table de données), le format par défaut des cellules d'en-tête est: "Standard" (1). Si on saisit: "01.01.2017", le format devient automatiquement: "Date", mais la valeur saisie ne change pas alors qu'elle devrait (2). Maintenant, si on applique le format personnalisé "mmmm aaaa", ni la valeur saisie, ni l'affichage ne changent, même si le format est bien celui appliqué (3).

    Si pour contourner le problème, on écrit: "01.01.2017" en dehors du tableau, qu'on applique le format personnalisé à cette cellule (4) et qu'on la copie dans l'en-tête de tableau, le format est bien personnalisé, le texte affiché est bien: "janvier 2017", mais la valeur sous-jacente est aussi devenue: "janvier 2017" (5)... Plus étrange encore, si on insère une colonne dans le tableau en choisissant l'option de format identique à la colonne d'avant, on peut sans autre saisir: "01.02.2017" et on aura alors affiché: "février 2017" avec la même valeur sous-jacente et le bon format personnalisé (6).

    Propriétés de la cellules à chacune des étapes (*):

    ------ Format - Valeur - Texte affiché
    1. General - Colonne1 - Colonne1
    2. m/d/yyyy - 01.01.2017 - 01.01.2017
    3. mmmm yyyy - 01.01.2017 - 01.01.2017
    4. mmmm yyyy - 42736 - janvier 2017
    5. mmmm yyyy - janvier 2017 - janvier 2017
    6. mmmm yyyy - février 2017 - février 2017

    Pourquoi faut-il passer par un copier-coller extérieur pour appliquer un format à une cellule d'en-tête?
    Comment se fait-il que la valeur change comme s'il s'agissait d'un format texte dans les situations (5) et (6) alors que le format personnalisé reste valable et s'applique maintenant à toute nouvelle saisie de date?

    Cordialement


    (*)Obtenu à l'aide du code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Debug.Print ActiveCell.NumberFormat & Chr(9) _   'format
                & ActiveCell.Value2 & Chr(9) _   'valeur sous-jacente
                & ActiveCell.Text   'texte affiché

  7. #7
    Responsable
    Office & Excel

    Avatar de Pierre Fauconnier
    Homme Profil pro
    Formateur et développeur informatique indépendant
    Inscrit en
    novembre 2003
    Messages
    9 918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur informatique indépendant
    Secteur : Enseignement

    Informations forums :
    Inscription : novembre 2003
    Messages : 9 918
    Points : 23 852
    Points
    23 852
    Billets dans le blog
    4

    Par défaut

    Je parlais bien d'un "bête" tableau, appelé aussi liste (d'ailleurs, le raccourci pour le créer est CTRL+L) et table de données (dans les options de calcul automatique, semi-automatique ou manuel)...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Vous souhaitez rédiger pour DVP? Contactez-moi
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    N'oubliez pas de VOTER (en bas à droite d'un message)
    ---------------

  8. #8
    Membre du Club
    Homme Profil pro
    Employé en comptabilité analytique
    Inscrit en
    juin 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Employé en comptabilité analytique
    Secteur : Bâtiment

    Informations forums :
    Inscription : juin 2016
    Messages : 93
    Points : 60
    Points
    60

    Par défaut

    Citation Envoyé par Pierre Fauconnier Voir le message
    Je parlais bien d'un "bête" tableau, appelé aussi liste (d'ailleurs, le raccourci pour le créer est CTRL+L) et table de données (dans les options de calcul automatique, semi-automatique ou manuel)...
    Ok.

    Et comment expliquer la différence entre avant et après le copier-coller extérieur?

  9. #9
    Responsable
    Office & Excel

    Avatar de Pierre Fauconnier
    Homme Profil pro
    Formateur et développeur informatique indépendant
    Inscrit en
    novembre 2003
    Messages
    9 918
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur informatique indépendant
    Secteur : Enseignement

    Informations forums :
    Inscription : novembre 2003
    Messages : 9 918
    Points : 23 852
    Points
    23 852
    Billets dans le blog
    4

    Par défaut

    Citation Envoyé par Dédé6621 Voir le message
    Ok.

    Et comment expliquer la différence entre avant et après le copier-coller extérieur?
    Ne faisant pas partie des développeurs d'Excel , je ne saurais pas te dire pourquoi cela se passe comme ça. Quoi qu'il en soit, la valeur d'une cellule d'entête est bien du texte (alignée à gauche par défaut) et Excel "traduit" la donnée saisie ou copiée, apparemment en tenant compte du format.

    Mais plutôt que de triturer les formats, il est plus simple de saisir directement du texte.

    Mon petit doigt me dit que si tu souhaites avoir un intitulé de type date formaté pour le travestir par un format, c'est que tu as un problème de conception de classeur (Par exemple avoir une colonne avec un intitulé de type date pour rechercher des valeurs à mettre dans la colonne)

    Peux-tu nous dire ce que tu cherches à réaliser?
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Vous souhaitez rédiger pour DVP? Contactez-moi
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    N'oubliez pas de VOTER (en bas à droite d'un message)
    ---------------

  10. #10
    Expert éminent

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    février 2010
    Messages
    3 985
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : février 2010
    Messages : 3 985
    Points : 7 201
    Points
    7 201

    Par défaut

    RE
    Citation Envoyé par Dédé6621 Voir le message
    Sans offense, ça me semble catastrophique point de vue présentation. Un copier-coller me paraît plus sain à côté.
    Sauf que le bête copier-coller ne te donnera JAMAIS une date au format date dans une cellule d'en-tête de tableau (table en US au sens table de données, mal traduit en français comme nombre de vocables d'Office).

    Comme je le disais c'est une solution de contournement utilisée dans les cas où il est impératif d'avoir de véritables dates en haut du tableau. Correctement fait on ne voit rien au niveau de la présentation.

    Comme tout contournement ce n'est pas idéal mais palliatif...
    Chris

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

  11. #11
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    6 727
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : juin 2007
    Messages : 6 727
    Points : 12 109
    Points
    12 109

    Par défaut

    Citation Envoyé par Dédé6621 Voir le message
    Le contenu non formaté de ma cellule est: "01.01.2017" que je m'attendais devenir: "janvier 2017".
    Aussi étonnant que ça puisse te paraitre, ta "date" n'est pas une date, du moins pas au sens où Excel l'entend.
    Je veux dire que ce n'est pas une valeur, c'est simplement du texte.
    Il n'est donc pas possible d'en changer le format.

    Si tu veux pouvoir jouer sur son format, il va falloir passer d'abord par une étape de transformation en valeur.

    En supposant que cette date soit en A1, sur une cellule vide de la même ligne, tu écris la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DATE(DROITE(A1;4);STXT(A1;4;2);GAUCHE(A1;2))
    Tu copies cette cellule vers le bas autant que tu as de dates à convertir.
    Tu sélectionnes l'ensemble des cellules contenant ces formules > Ctrl+C
    Tu sélectionnes la première de tes cellules contenant une date > Ruban Accueil > Icone Coller > Valeur

    Ensuite, tu pourras supprimer la colonne dans laquelle tu as mis les formules ci-dessus et passer celle contenant les dates au format date que tu souhaites.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  12. #12
    Membre du Club
    Homme Profil pro
    Employé en comptabilité analytique
    Inscrit en
    juin 2016
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Employé en comptabilité analytique
    Secteur : Bâtiment

    Informations forums :
    Inscription : juin 2016
    Messages : 93
    Points : 60
    Points
    60

    Par défaut

    Merci à nouveau pour vos réponses.

    Citation Envoyé par Pierre Fauconnier Voir le message
    Mon petit doigt me dit que si tu souhaites avoir un intitulé de type date formaté pour le travestir par un format, c'est que tu as un problème de conception de classeur (Par exemple avoir une colonne avec un intitulé de type date pour rechercher des valeurs à mettre dans la colonne)

    Peux-tu nous dire ce que tu cherches à réaliser?
    Oui, je vois ce que tu veux dire. En l'occurrence, il y a bien plus de lignes que de colonnes. Ces dernières vont simplement de janvier à février. Pas une affaire, vous allez me dire. J'était simplement surpris que le format ne fonctionnât pas d'emblée et surpris également qu'il fonctionnât après coup avec un copier-coller.
    À part ça, je ne savais pas que c'était une mauvaise pratique d'utiliser des formats personnalisés.

    Citation Envoyé par 78chris Voir le message
    Sauf que le bête copier-coller ne te donnera JAMAIS une date au format date dans une cellule d'en-tête de tableau (table en US au sens table de données, mal traduit en français comme nombre de vocables d'Office).

    Comme je le disais c'est une solution de contournement utilisée dans les cas où il est impératif d'avoir de véritables dates en haut du tableau. Correctement fait on ne voit rien au niveau de la présentation.

    Comme tout contournement ce n'est pas idéal mais palliatif...
    "JAMAIS", mais il y a un contournement... un peu contradictoire non.
    Je suis d'accord, ce n'est pas idéal. C'est pour ça que j'ai posé la question.

    Citation Envoyé par Menhir Voir le message
    Aussi étonnant que ça puisse te paraitre, ta "date" n'est pas une date, du moins pas au sens où Excel l'entend.
    Je veux dire que ce n'est pas une valeur, c'est simplement du texte.
    Il n'est donc pas possible d'en changer le format.

    Si tu veux pouvoir jouer sur son format, il va falloir passer d'abord par une étape de transformation en valeur.

    En supposant que cette date soit en A1, sur une cellule vide de la même ligne, tu écris la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DATE(DROITE(A1;4);STXT(A1;4;2);GAUCHE(A1;2))
    Tu copies cette cellule vers le bas autant que tu as de dates à convertir.
    Tu sélectionnes l'ensemble des cellules contenant ces formules > Ctrl+C
    Tu sélectionnes la première de tes cellules contenant une date > Ruban Accueil > Icone Coller > Valeur

    Ensuite, tu pourras supprimer la colonne dans laquelle tu as mis les formules ci-dessus et passer celle contenant les dates au format date que tu souhaites.
    Encore une fois, un copier-coller me semble plus simple dans le cas qui a fait naître mon interrogation, sachant que je peux étendre ensuite les colonnes et que les en-tête transforment ensuite automatiquement une date dans le format voulu, même si la valeur sous-jacente devient du texte.
    Bien sûr j'aurais pu écrire mes en-tête avant la création du tableau, ce qui est une meilleure pratique je pense. Mais en l'occurrence, je transformais un tableau pré-existant. Ça ne m'est donc pas venu à l'esprit.

    À ce stade, je suppose qu'il s'agit d'une arcane de développement d'Excel et que le copier-coller, c'est tout de même pas si mal.
    Discussion résolue donc.


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CR XI] En-tête de tableau à répéter
    Par navis84 dans le forum SAP Crystal Reports
    Réponses: 6
    Dernier message: 09/11/2006, 16h34
  2. En-tête de tableau fixe
    Par navis84 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 31/07/2006, 15h59
  3. pb avec un en tête de tableau qui bouge
    Par sissi25 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 15
    Dernier message: 13/07/2006, 10h21
  4. Réponses: 6
    Dernier message: 14/04/2006, 16h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo