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 :

Ouverture d'un fichier Excel par VBA [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2011
    Messages : 21
    Points : 7
    Points
    7
    Par défaut Ouverture d'un fichier Excel par VBA
    Bonjour,

    Voici un code VBA me permettant non seulement de créer un nouveau fichier Excel mais aussi, de le sauvegarder automatiquement avec la date du jour :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Sub NewExcelDoc()
    '
    ' NewExcelDoc Macro
        Dim MonFichier$
        MonFichier = "Migration_Report"
        ChDir "Z:\W7 Project\LaboMigration\BLM\"
        ActiveWorkbook.SaveAs Filename:="Z:\W7 Project\LaboMigration\BLM\" & MonFichier & "_" & FORMAT(Now, "dd-mm-yyyy") & ".xlsx", FileFormat:= _
        xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
        Set wbExcel = appExcel.Workbooks.Open("Z:\W7 Project\LaboMigration\BLM\") & MonFichier
    End Sub
    La dernière ligne de mon petit programme VBA n'est pas correcte, je le sais.
    Ce que je voudrais, c'est que le fichier soit automatiquement ouvert et ce peu importe la date affectée. Il s'agit donc d'une variable et non d'un fichier ayant le même nom à chaque fois.

    Comment puis-je faire ?

    Merci à vous tous

    Fred

  2. #2
    Membre chevronné Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Points : 2 003
    Points
    2 003
    Par défaut
    bonjour,
    plusieurs problèmes se présente à toi.
    Pour commencer,
    Excel ouvre un fichier qui à une extension: .xls, .xlsx etc...
    or ta variable n'a pas d'extension:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monfichier = "Migration_Report"
    1) il faut redéfinir ta variable avec le "bon" nom de fichier, celui que tu lui donnes à l'enregistrement.

    2) après ta ligne d'enregistrement ensuite corrige :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Set wbExcel = appExcel.Workbooks.Open("Z:\W7 Project\LaboMigration\BLM\") & monfichier
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set wbExcel = Workbooks.Open("Z:\W7 Project\LaboMigration\BLM\" & monfichier)
    voici le principe pour ouvrir un fichier:
    exemple j'ai un classeur qui se nomme test.xls dans le dossier c:\Test
    je veux ouvrir ce classeur et l'instancier dans une variable:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub test()
    Dim monfichier As String, chemin As String
    Dim wbExcel As Workbook
     
    monfichier = "Test.xls" 'le fichier que je veux ouvrir
    chemin = "C:\Test\" 'le chemin où il se trouve
     
    Set wbExcel = Workbooks.Open(chemin & monfichier)
     
    End Sub
    ou verras après pour le reste et si tu rencontres des erreurs merci de bien expliquer quelles sont-elles!
    @+

    Si vous avez trouvé la solution à votre problème n'oubliez pas d'appuyer sur
    Et n'oubliez pas de voter en appuyant sur si ce message a repondu à vos attentes.
    Ou sur si ce n'est pas le cas

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2011
    Messages : 21
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Merci de ta réponse. Elle me donne déjà quelques pistes.
    Néanmoins, je ne comprends pas ton point 1) :

    1) il faut redéfinir ta variable avec le "bon" nom de fichier, celui que tu lui donnes à l'enregistrement.
    Pour info, le nom est généré à l'enregistrement et il n'y a pas d'autres nom.
    Le nom générique est "Migration_Report".
    A chaque création quotidienne d'un fichier de migration, le nom est complété par la date du jour.

    Ensuite ce que je veux, c'est qu'immédiatement, il m'ouvre ce nouveau fichier.

    Je teste et je te tiens informé

    Merci beaucoup à toi et à tout le forum qui aidez les gens désireux d'apprendre.

    Amicalement,

    Fred

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2011
    Messages : 21
    Points : 7
    Points
    7
    Par défaut Ouverture d'un fichier Excel par VBA
    Bonjour.

    Suite à la dernière modification, le fichier se crée mais une succession d'erreurs se posent :

    1. Lorsque j'exécute la Macro :



    Pourtant il me crée bien plus ou moins le fichier :




    2. J'appuie sur "OK" pour sortir de l'erreur 1 et j'arrive à cet écran :



    3. Enfin, quand il me crée ce fichier, j'ai toujours le même problème ... à savoir la présence d'une seule feuille de calcul :



    Merci pour vos infos,

    Amicalement,

    Fred
    Images attachées Images attachées     

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2011
    Messages : 21
    Points : 7
    Points
    7
    Par défaut
    Bjr RVTOULON,

    Je viens de comprendre la nécessité de renommer le nom de départ ...
    Il doit partir d'une valeur de départ et renommer cette valeur avec les bon paramêtres.
    Est-ce comme celà que je dois le comprendre ?

    Neanmoins, je ne vois pas trop comment correctement l'implémenter.

    Merci d'avance,

    Bien à toi,

    Fred

  6. #6
    Membre chevronné Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Points : 2 003
    Points
    2 003
    Par défaut
    ton code actuel enregistre un fichier sous un nom : "Migration_report_24-04-2012.xlsx" ok?

    mais tu donnes à la variable monfichier:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    monfichier = "Migration_Report"
    et tu cherches à ouvrir celui là et pas l'autre.

    essai quelques choses comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     Dim monfichier As String, chemin As String
    Dim wbExcel As Workbook
     
        monfichier = "Migration_Report_" & Format(Now, "dd-mm-yyyy") & ".xlsx"
     
        chemin = "Z:\W7 Project\LaboMigration\BLM\"
     
        ActiveWorkbook.SaveAs Filename:=chemin & monfichier, FileFormat:= _
        xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
     
        Set wbExcel = Workbooks.Open(chemin & monfichier)
    @+

    Si vous avez trouvé la solution à votre problème n'oubliez pas d'appuyer sur
    Et n'oubliez pas de voter en appuyant sur si ce message a repondu à vos attentes.
    Ou sur si ce n'est pas le cas

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Mars 2011
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Technicien maintenance

    Informations forums :
    Inscription : Mars 2011
    Messages : 21
    Points : 7
    Points
    7
    Par défaut Ouverture d'un fichier Excel par VBA
    Cher Hervé,

    Je te remerci.

    J'étais oqp à travailler sur le problème quand je me suis rendu sur le forum.
    Là, j'ai constaté que nous étions sur la même piste.

    Mais toi, tu avais la solution. ! Merci

    A noter que j'ai du modifier l'extension de sauvegarde "xlsx" en "xls" car il ne reconnaissait soi-disant pas le format.

    Enfin, ce n'est pas trop grave.

    Pour moi le sujet est résolu.

    J'ai un autre problème et j'aimerais voir si tu peux m'aider.

    Il sera affiché dans quelques minutes.

    Merci pour ton aide.

    Amicalement

    Fred

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 25/06/2015, 17h24
  2. Appel fichier excel par vba
    Par wachoo31 dans le forum VBA Access
    Réponses: 2
    Dernier message: 05/04/2009, 11h13
  3. ouverture d'un fichier excel par une macro
    Par gaihdriah dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 11/02/2009, 12h16
  4. Renommer fichier excel par vba
    Par lucazzo dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 19/07/2008, 12h20
  5. Ouverture d'un fichier Excel en VBA par Access
    Par illight dans le forum Access
    Réponses: 2
    Dernier message: 02/11/2005, 11h14

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