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 :

Ouvrir un fichier excel xlsm depuis une macro [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    Août 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : autre
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2018
    Messages : 4
    Par défaut Ouvrir un fichier excel xlsm depuis une macro
    Bonjour,
    J'ai une macro qui marchait très bien sous excel 97-2003, et je l'ai basculé sur excel 2016. Elle sert à ouvrir un fichier excel, dont le nom est fixé par le fichier mère.
    Voici la macro:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    'PROCÉDURE REPRISE AFFAIRE EXISTANTE
    'Ouverture du fichier correspondant à la ref choisi dans la liste déroulante
    '
    Sub consultaffaire()
    ChDir "D:\CSBK\Administratif\0 Gestion affaires\Répertoire Affaire"
        Application.Goto Reference:="refconsultaffaire"
        x = ActiveCell.FormulaR1C1
        Workbooks.Open Filename:= _
        x
        ActiveWorkbook.RunAutoMacros xlAutoOpen
    End Sub
    Le problème, c'est que la macro essaye d'ouvrir un fichier xlsx, alors que le fichier à ouvrir est un xlsm. Du coup, la mcro plante.
    Est ce que quelqu'un peut m'aider?

    Merci d'avance.

  2. #2
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,

    Tu as vérifié le nom qui remplaces ton x ?
    Si tu demandes un xlsm il n'y a aucune raison d'ouvrir un xlsx

  3. #3
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    Août 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : autre
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2018
    Messages : 4
    Par défaut
    Bonjour,

    Oui, j'ai regardé le nom du fichier que la macro essaye d'ouvrir, c'est le même nom que le fichier à ouvrir.
    Seulement, dans ma macro, je ne spécifie pas l'extension du fichier à ouvrir, parce que je ne sais pas le faire. Du coup, la macro ouvre par défaut du xlsx, alors qu'il faudrait qu'elle ouvre du xlsm.

    Je cherche donc l'écriture pour que ma macro ouvre du xlsm.

  4. #4
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,


    Si tu veux ouvrir le xlsm il suffit de le préciser dans la macro
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Workbooks.Open Filename:=x & ".xlsm"

  5. #5
    Membre à l'essai
    Homme Profil pro
    autre
    Inscrit en
    Août 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : autre
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2018
    Messages : 4
    Par défaut
    Bonjour,

    J'ai essayé ton code, la macro cherche bien maintenant à ouvrir le xlsm.
    Par contre elle ne fonctionnait toujours pas. Du coup, j'ai fait quelques recherches. Et je me suis aperçu qu'il fallait que je fasse de "D" mon lecteur par défaut dans la macro pour qu'elle fonctionne.
    Du coup, j'ai rajouté le code suivant:
    ChDrive "D"

    Et la macro fonctionne très bien.

    Merci pour ton aide.

  6. #6
    Membre Expert
    Inscrit en
    Septembre 2007
    Messages
    1 142
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 142
    Par défaut
    Bonjour,

    Plutôt que de changer les répertoires et drives tu peux le faire plus simplement ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub consultaffaire()
        Application.Goto Reference:="refconsultaffaire"
        Workbooks.Open Filename:= "D:\CSBK\Administratif\0 Gestion affaires\Répertoire Affaire\" &  ActiveCell.Value & ".xlsm"
        ActiveWorkbook.RunAutoMacros xlAutoOpen
    End Sub

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 25/04/2016, 15h44
  2. Ouvrir un fichier word (.doc) avec une macro excel
    Par Lyadrielle dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/02/2014, 12h30
  3. remplacement carré par ; dans un fichier excel crée par une macro
    Par om51ft dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 22/11/2007, 16h00
  4. Réponses: 1
    Dernier message: 23/09/2006, 14h12
  5. Réponses: 1
    Dernier message: 02/02/2006, 14h26

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