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 :

Macro créant un fichier sur la base d'un modèle


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Macro créant un fichier sur la base d'un modèle
    Bonjour

    J'essai en vain de créer une macro qui pourrais me créer/ouvrir un fichier sur la base d'un fichier .xlsx
    Ce fichier sera nommé comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NomFICHIER = "Planning " & [E2] & " " & [f6] & ".xls"
    Le but etant en sélectionnant une semaine, d'ouvrir ou de créer une nouvelle page dans laquelle je pourrais saisir un planning pour mon staff

    Qqun pourrait-il m'aider ?
    merci

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 940
    Points : 28 938
    Points
    28 938
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Un modèle dans Excel est suffixé xlst pour les versions supérieure à 2003 et xlt pour les versions 2003 (Les modèles 2003 fonctionnent pour les versions supérieures)
    Donc si tu crées un classeur comme modèle en le sauvant, il faut sélectionner Modèle Excel dans la liste Type (Type se trouve juste en dessous de Nom de fichier dans la boîte de dialogue Enregistrer sous.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Juin 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Juin 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut macros
    C'est noté, merci beaucoup

    Ensuite quelle est la procédure pour une macro qui me permettrai d'ouvrir ou de créer un fichier sur ce modèle ?

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 940
    Points : 28 938
    Points
    28 938
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Le meilleur ami du programmeur VBA est l'enregistreur de macros.
    1) Tu enclenches l'enregistreur de macros.
    2) Tu cliques sur l'onglet [Fichier], tu sélectionnes Nouveau et ensuite Mes modèles.
    3) Dans la boîte de dialogue, tu sélectionnes le modèle souhaité
    4) Le modèle chargé, tu cliques sur le bouton d'enregistrement du classeur et tu lui attribues un nom et tu choisis le répertoire de destination.
    5) Tu arrêtes l'enregistreur
    6) Tu vas dans l'éditeur (Alt + F11)
    Voilà le code généré par l'enregistreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Macro1()
    ' Macro1 Macro
        Workbooks.Add Template:= "C:\Users\Corona\AppData\Roaming\Microsoft\Templates\Note de Frais.xlt"
        ChDir "C:\Users\Corona\Documents"
        ActiveWorkbook.SaveAs Filename:= _
            "C:\Users\Corona\Documents\140615 Note de Frais.xlsx", FileFormat:= _
            xlOpenXMLWorkbook, CreateBackup:=False
    End Sub
    Ensuite on retravaille ce code.

    Par exemple, on modifie la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Add Template:= "C:\Users\Corona\AppData\Roaming\Microsoft\Templates\Template - Note de Frais.xlt"
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Workbooks.Add Template:=Application.TemplatesPath & "Note de Frais.xlt"
    et ainsi de suite.
    Si tu ne sais pas, la FAQ, les tutoriels, le forum peuvent t'aider

Discussions similaires

  1. recherche sur un fichier sur une base de temps
    Par agathe04 dans le forum Scilab
    Réponses: 4
    Dernier message: 06/11/2013, 08h25
  2. [XL-2010] Recherche de fichiers sur la base de différents critères
    Par venusfr dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/05/2012, 14h12
  3. [XL-2007] Créer en VB des classeurs contenant des tableaux croisés sur la base d'un modèle
    Par mikeactuaire dans le forum Macros et VBA Excel
    Réponses: 31
    Dernier message: 07/11/2011, 17h02
  4. [WD-2003] Enregistrement sur la base d'un modèle
    Par 8e8eClo dans le forum VBA Word
    Réponses: 3
    Dernier message: 30/05/2011, 15h47
  5. [Toutes versions] Enregistrement sur la base d'un modèle
    Par 8e8eClo dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 28/01/2011, 11h03

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