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

Macros et VBA Excel Discussion :

Définir un nom de cellule local en VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 884
    Par défaut Définir un nom de cellule local en VBA
    Bonjour,

    J'essaie de définir un nom en VBA dont l'étendue est une feuille et non le classeur et je n'y arrive pas.

    Le nom de la feuille est variable (variable "Feuille" et mon code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.Worksheets(Feuille).Names.Add Name:="Blabla", RefersToR1C1:="='" & Feuille & "'!R11C12"
    J'obtiens la référennce

    ='01'!'L11C12'
    alors que je devrais avoir

    ='01'!L11C12
    Si j'enlève les apostrophes du code, le résultat est le même

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveWorkbook.Worksheets(Feuille).Names.Add Name:="Blabla", RefersToR1C1:="=" & Feuille & "!R11C12"
    Je ne trouve pas mon erreur

    Merci pour votre aide.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Daejung Voir le message
    Bonjour,

    La notation de type "L1C1" est décochée dans mes options. La macro ci-dessous donne le résultat dans la capture d'écran :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sub Macro2()
     
    Dim Feuille As String
     
        Feuille = "Ma feuille2"
        ActiveWorkbook.Worksheets(Feuille).Names.Add Name:="Blabla", RefersToR1C1:="='" & Feuille & "'!R11C12"
     
    End Sub
    Pièce jointe 387555

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 884
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 884
    Par défaut
    Citation Envoyé par Eric KERGRESSE Voir le message
    Bonjour,

    La notation de type "L1C1" est décochée dans mes options. La macro ci-dessous donne le résultat dans la capture d'écran :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sub Macro2()
     
    Dim Feuille As String
     
        Feuille = "Ma feuille2"
        ActiveWorkbook.Worksheets(Feuille).Names.Add Name:="Blabla", RefersToR1C1:="='" & Feuille & "'!R11C12"
     
    End Sub
    Pièce jointe 387555
    Merci

    J'avais coché provisoirement le type L1C1 pour ne pas avoir à compter les colonnes.

    Apparemment le problème ne venait pas de là car maintenant cela fonctionne avec ou sans type L1C1 coché

    J'avais en fait laissé une ligne de code récupérée lors d'un enregistrement de macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'ActiveWorkbook.Worksheets(Feuille).Names("Blabla").Comment = ""
    Je l'ai enlevée et tout fonctionne, avec ou sans type L1C1

    "Feuille" était correctement initialisée, c'est la première chose que j'avais vérifiée

    Merci encore

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour
    Il s'agit finalement là d'un simple et seul problème de concaténation de chaînes et de variables, quelles que soient ces chaînes et variables (nom de cellule ou n'importe quoi d'autre ...)
    tu parles de tout sauf de l'essentiel (comment tu as initialisé la variable Feuille).
    Ta mésaventure peut par exemple être le résultat d'une initialisation de l'espèce :

Discussions similaires

  1. [VBA] nom de cellule
    Par getea85 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 22/08/2006, 10h51
  2. Réponses: 4
    Dernier message: 30/05/2006, 17h21
  3. [VBA-E]Définir un nom au classeur créé
    Par LeSqual dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 01/05/2006, 09h37
  4. [VBA-E]définir l'ensemble des cellules d'une feuille?
    Par yaya54 dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 02/03/2006, 08h46
  5. [VBA-E]attribution d'un nom à une cellule
    Par capedam dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 14/02/2006, 05h22

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