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 :

Formule avec des données dans un autre fichier.


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2017
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Formule avec des données dans un autre fichier.
    Bonjour,

    J'ai un fichier où je souhaite mettre une formule faisant référence à des données d'un autre fichier déjà ouvert.

    J'ai enregistré une formule (index équiv) avec l'enregistreur de macro.
    Elle fonctionne très bien.

    voici le résultat :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Range("A2").Select
    ActiveCell.FormulaR1C1 = _
          "=INDEX('AA.xlsm'!Base,MATCH(RC[-1],'AA.xlsm'!Res,0),3)"
    Mon souci est que si le fichier AA.xlsm est renommé et si l'on souhaite choisir un autre fichier (ex: AB.xlsm), la macro va planter.

    J'ai donc essayé de déclarer le fichier ouvert par Fic=ActiveWorbook.Name et remplacer AA.xlsm par "Fic" dans la formule ci-dessus =INDEX('Fic'!Base,MATCH(RC[-1],'Fic'!Res,0),3).
    Mais malheureusement ça ne marche pas.

    Quelqu'un aurait-il une idée ?
    Merci par avance.

  2. #2
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    "Fic" est une variable donc, elle doit être concaténée avec le reste du texte et pas s'y trouver en "dur" donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Dim Fic As String
     
    Fic = ActiveWorbook.Name
     
    Range("A2").FormulaR1C1 = "=INDEX('" & Fic & "'!Base,MATCH(RC[-1],'" & Fic & "'!Res,0),3)"

Discussions similaires

  1. Réponses: 6
    Dernier message: 15/05/2018, 16h47
  2. Réponses: 1
    Dernier message: 15/06/2017, 16h14
  3. [XL-2010] Macro pour aller chercher des données dans un autre fichier
    Par GoToon dans le forum Macros et VBA Excel
    Réponses: 40
    Dernier message: 24/01/2015, 03h52
  4. Réponses: 1
    Dernier message: 08/10/2008, 15h30
  5. Comparaison cellules avec une plage de données dans un autre fichier
    Par Jibi64 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 06/08/2008, 16h22

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