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 :

liaison plages nommées rompu lors du déplacement de feuilles


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    42
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2010
    Messages : 42
    Par défaut liaison plages nommées rompu lors du déplacement de feuilles
    Bonjour,

    j'ai créé une macro qui déplace plusieurs feuilles d'un classeur A vers un classeur B. Mon problème vient du fait que lors de ce déplacement (qui est en fait un copier/coller), la référence à une plage nommée via une fonction indirect saute.

    Je me retrouve donc dans mon classeur B, dans une feuille 1 avec des cellules faisant référence à une plage nommée située dans une feuille 2 de ce même classeur sans que la formule ne trouve la plage nommée.
    En allant dans Insertion/noms/définir (Excel 2003), je me rend compte que le plages nommées situées dans en feuille 2 ont sauté car la localisation des plages commence par un #REF...

    Existe t-il un moyen de contourner ce problème et ou de modifier via macro, toutes les références commençant par #REF en le nom de ma feuille 2 contenant ces fameuses plages ??

    merci d'avance pour votre aide,
    ci-dessous mon code de copier/coller


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    '-- Déplacement des différents onglets--------------------------------------
     
    Var_Chemin = "TDB_CA_PREV_2012_MASTER v2.xls"
     
    FichierSource = ActiveWorkbook.Name
     
    Workbooks.Open Var_Chemin, 0, ReadOnly:=False
    FichierDest = ActiveWorkbook.Name
     
    Workbooks(FichierSource).Sheets(Array(Feuil4.Name, Feuil9.Name, Feuil2.Name, Feuil3.Name, Feuil11.Name, Feuil10.Name, Feuil5.Name)).Copy After:=Workbooks(FichierDest).Sheets(Feuil12.Name)

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    207
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 207
    Par défaut
    Bonjour,

    Les plages nommées d'un classeur sont contenues dans la collection 'Workbook.Names' d'un classeur.

    Par contre c'est en lecture seule donc tu ne peux pas copier cette collection d'un classeur à un autre. Il te faut donc copier les plages nommées dont tu as besoin.

    Cf. l'explorateur d'objets (F2) pour plus de renseignements sur cette collection.

Discussions similaires

  1. Adresse de Cellule d'une plage nommée
    Par edelweisseric dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 22/06/2007, 10h13
  2. Export Excel "Impossible d'agrandir la plage nommée"
    Par jean-paul lepetit dans le forum Access
    Réponses: 15
    Dernier message: 22/05/2007, 10h55
  3. Réponses: 10
    Dernier message: 02/05/2007, 21h32
  4. Réponses: 2
    Dernier message: 21/12/2005, 14h08
  5. [TForm] Problème lors du déplacement d'une fenêtre sans barre de titre
    Par Benjamin GAGNEUX dans le forum Composants VCL
    Réponses: 3
    Dernier message: 14/10/2004, 18h10

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