IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Syntaxe du Nom de Gestionnaire de noms


Sujet :

Excel

  1. #1
    Membre habitué
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 6
    Par défaut Syntaxe du Nom de Gestionnaire de noms
    Bonjour à tous,
    Merci pour votre lecture et votre aide.
    J'ai besoin de renommer des cellules d'une feuilles.
    Ces noms doivent respecter une nomenclature préciser LettreChiffreChiffre_ChiffreChiffre > exemple A01_01
    Mais, tous les noms sont acceptés (de A à Z) sauf avec le C : exemple C01_01 et j'ai le message : "La syntaxe de ce nom est incorrecte"
    Pourriez-vous me dire la raison de cet erreur et si il est possible de faire accepter C01_01.
    Encore merci
    Sylvain

  2. #2
    Membre émérite
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2022
    Messages
    685
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Octobre 2022
    Messages : 685
    Par défaut
    Bonjour
    en toute logique on ne devrait pas avoir de pb puisque sauf erreur C01_01 n'est pas ambigu mais il semble bien que tout ce qui commence par une référence R1C1, en Français ou en Anglais soit interdit.

    Donc tu vas avoir le même problème avec L et R.

    Il va peut-être être judicieux de changer de nomenclature style Lettre_ChiffreChiffre_ChiffreChiffre en tout cas un truc qui n'énerve pas Excel.

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 114
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Voici les règles de nommage pour les noms de cellules et de plages dans Excel :
    Longueur du nom : Un nom dans Excel peut contenir jusqu'à 255 caractères.
    Caractères autorisés : Les noms peuvent contenir des lettres, des chiffres, des points (.) et des caractères de soulignement (_). Notez que les noms ne peuvent pas commencer par un chiffre, un point ou un caractère de soulignement (pour ce dernier point, j'ai des doutes car j'ai déjà commencé par un Underscore).
    Pas d'espaces : Les noms ne peuvent pas contenir d'espaces. Vous pouvez utiliser un caractère de soulignement ou un point à la place d'un espace.
    Pas de caractères spéciaux : Les noms ne peuvent pas contenir de caractères spéciaux tels que !, $, #, %, ^, &, *, (, ), -, +, =, /, `, ~, etc.
    Pas de conflit avec les références de cellules : Les noms ne peuvent pas être les mêmes que les références de cellules. Par exemple, vous ne pouvez pas nommer une plage "A1" car cela fait référence à une cellule spécifique.
    Sensibilité à la casse : Excel n'est pas sensible à la casse, ce qui signifie que "MonNom" et "monnom" seraient considérés comme le même nom.
    Unicité : Chaque nom doit être unique dans le classeur. Cependant, si vous avez plusieurs feuilles de calcul dans votre classeur, vous pouvez utiliser le même nom dans différentes feuilles de calcul si vous choisissez l'étendue "Feuille"
    Pas de noms réservés : Excel a certains noms réservés comme "c", "r", "c1", "r1", "spc", etc. Vous ne pouvez pas utiliser ces noms réservés pour nommer vos cellules ou plages.
    Pas de conflit avec les noms de fonctions Excel : Vous ne pouvez pas utiliser les noms de fonctions Excel existantes pour nommer vos cellules ou plages. Par exemple, vous ne pouvez pas nommer une plage "SUM" ou "AVERAGE".

    En règle générale, on utilise le gestionnaire des noms dans le but de clarifier la lecture des formules, ou l'adressage dans la validation de données. Je ne suis pas certain que donner comme nom C01_01 va aider
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Membre habitué
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 6
    Par défaut
    Bonjour,
    Et merci pour ces réponses et tant de détails précis.
    En me basant sur vos retour, en effet, des noms commençant par C et R font référence à un colonne ou une ligne. Donc j'ai pu ajouter un _ avant ou après la lettre. Et ça marche.
    On peut en effet commencer par un _.
    Je me suis demandé si il était possible de désactiver les références C et R native. Mais outre le fait que ce soir impossible, je suppose que ce n'est pas judicieux pour le bon fonctionnement d'Excel.
    Dans cette démarche, j'ai donc créé une macro qui me fait tous les nommages.
    Je vais faire profiter de mon expérience d'hier :
    Pour créer un nouveau nom, il faut utiliser le code :
    ActiveWorkbook.Names.Add Name:="NomCellule", RefersTo:="=NomFeuille!$A$1" ou Call ActiveWorkbook.Names.Add("NomCellule", "=NomFeuille!$A$1")
    La ligne fonctionne et pas de problème.
    Mais, si on veut ajouter un commentaire (espace commentaire de la boite de dialogue Gestionnaire des noms), le champ Comment n'existe pas dans la méthode add.
    Il faut ajouter la ligne :
    ActiveWorkbook.Names("databases").Comment = "Un beau commentaire"
    MAIS, un bug vient modifier la référence et le lien $A$1 est "tranformé en 'R1C1' (et en français : L1C1). Et le nom n'est plus reconnu, les cellules y faisant référence affichent #NOM.
    Pour éviter ce problème il faut répéter la création :
    ActiveWorkbook.Names.Add Name:="NomCellule", RefersTo:="=NomFeuille!$A$1" ou Call ActiveWorkbook.Names.Add("NomCellule", "=NomFeuille!$A$1")
    Désolé, je n'ai pas trouvé d'autre solution.
    Encore merci à tous et bonne continuation

  5. #5
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 114
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Personnellement, je n'ai pas de problème

    Exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub t()
     Const CellName As String = "Toto"
     With ActiveWorkbook
     .Names.Add Name:=CellName, RefersTo:="=Feuil1!$A$1"
     .Names(CellName).Comment = "Ceci est mon explication"
     End With
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  6. #6
    Membre habitué
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Septembre 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2013
    Messages : 6
    Par défaut
    Merci beaucoup pour ce code, je vais l'utiliser.
    Je reconnais que j'utilisais donc le Add avant le with.
    Encore merci et très bonne continuation
    Sylvain

  7. #7
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 114
    Billets dans le blog
    53
    Par défaut
    Bonjour Sylvain,
    Sans le bloc With...End With, c'est moins élégant à lire mais cela fonctionne également
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub t()
     Const CellName As String = "Toto"
     ActiveWorkbook.Names.Add Name:=CellName, RefersTo:="=Feuil1!$A$1"
     ActiveWorkbook.Names(CellName).Comment = "Ceci est mon explication"
    End Sub
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 11/02/2012, 19h32
  2. Réponses: 0
    Dernier message: 08/02/2011, 11h20
  3. FileOutputStream : Syntaxe du nom de fichier incorrect
    Par stephane.combes dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 20/01/2011, 14h16
  4. Erreurs syntaxe nom de fichier etc
    Par PhiberOptik dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 24/02/2007, 13h46
  5. [syntaxe]Creation table avec nom dynamique
    Par ZuZu dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 23/09/2004, 18h01

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