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 :

Générer fichier word depuis excel [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 45
    Points : 27
    Points
    27
    Par défaut Générer fichier word depuis excel
    Bonsoir a tous,

    Je viens de faire un tour sur le web ( merci google ) mais je ne trouve pas ce que je veux.

    J'aimerai depuis une feuille de mon classeur excel , générer un fichier world , avec un bouton.

    Explication :

    J'ai sur une colonne commençant en C2 des noms de mes clients " Feuil15 ( Fichier Client ) ".
    Quand je sélectionne un nom de cette colonne , je voudrais à l'aide d'un bouton ( que je rajouterai ensuite ) générer un fichier word ( afin d'y mettre d'avantage d'information ).
    Que celui-ci se sauvegarde dans un dossier " Mon Dossier Clients " se trouvant a coté de la racine du fichier excel .
    Qu'il se sauvegarde avec le nom saisi dans la colonne
    Enfin qu' il y ai un lien Hypertexte entre le nom saisi de la colonne et le fichier word créé sous le même nom afin d'y ajouter du texte

    Si quelqu'un a sous le coude un morceau de code pouvant m'aider se serait sympa

    Merci pour votre aide

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 111
    Points : 118
    Points
    118
    Par défaut
    Salut,
    Va voir .
    A plus

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 45
    Points : 27
    Points
    27
    Par défaut
    Bonjour a tous , j'ai ce code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    Sub CreerOuvrirWord()
    Dim NomDoc As String
    Dim Chemin As String
    Dim appWD As Word.Application
    Dim oDoc As Word.Document
    nom = Cells(ActiveCell.Row, 3) & " " & " "
    NomDoc = nom & ".doc"
    If Len(nom) = 1 Then Exit Sub 'si la ligne ne contient ni nom ni prénom on quitte
    Chemin = ActiveWorkbook.Path & "\" & NomDoc 'à adapter ici répertoire courant
    On Error Resume Next
    Set appWD = CreateObject("Word.Application")
    If Err.Number <> 0 Then
        Set appWD = CreateObject("Word.Application")
    End If
    On Error GoTo 0
    If Dir(Chemin) <> "" Then
        Set oDoc = appWD.Documents.Open(Chemin)
    Else
        Set oDoc = appWD.Documents.Add
        oDoc.SaveAs Chemin
    End If
    appWD.Visible = True
    appWD.Activate
     
    End Sub
    Quelqu'un peut-il m'aider pour l'adapter a mes besoins , sachant qu'il bloque déja à la ligne 4 et j'ignore pourquoi !

    Merci de votre aide

    Je viens de trouver pour la ligne 4 , je n'avais pas activé la référence

    Par contre une fois le fichier établie , peut-on mettre 1 lien hypertexte , afin de réouvrir word a partir du nom ?

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 45
    Points : 27
    Points
    27
    Par défaut
    Slt,

    Oubliez tout ce que j'ai dit, ma macro fonctionne très bien, même pour ré-ouvrir un fichier existant contenant déjà du texte

    Je me remercie donc pour l'aide que je me suis apporté lol

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 45
    Points : 27
    Points
    27
    Par défaut
    Bonsoir a tous ,

    Je reviens vers vous avec une autre idée dérriére la tête mais je n'arrive pas a faire la macro.

    Je génére toujours un fichier word avec cette macro :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Sub CreerOuvrirWord()
    Dim NomDoc As String
    Dim Chemin As String
    Dim appWD As Word.Application
    Dim oDoc As Word.Document
    nom = Cells(ActiveCell.Row, 3) & " " & " "
    NomDoc = nom & ".doc"
    If Len(nom) = 1 Then Exit Sub 'si la ligne ne contient ni nom ni prénom on quitte
    Chemin = ActiveWorkbook.Path & "\Mon Fichier Clients\" & NomDoc 'à adapter ici répertoire courant
    On Error Resume Next
    Set appWD = CreateObject("Word.Application")
    If Err.Number <> 0 Then
        Set appWD = CreateObject("Word.Application")
    End If
    On Error GoTo 0
    If Dir(Chemin) <> "" Then
        Set oDoc = appWD.Documents.Open(Chemin)
    Else
        Set oDoc = appWD.Documents.Add
        With oDoc
            With .Sections(1).Headers(wdHeaderFooterPrimary).Range 'ajout d'un en-tête contenant le nom
                .Font.Bold = True 'en gras
                .Font.Italic = True 'en italique
                .Text = "Fiche de soin de " & nom
            End With
            .SaveAs Chemin
        End With
    End If
    appWD.Visible = True
    appWD.Activate
     
    End Sub
    J'ai créé un modèle sous word qui s’appelle "Modéle.dotx" se trouvant à la base du fichier Excel
    J'aimerai créer ce fichier a partir de ce modéle avec les mêmes conditions, mais je coince sur le code .
    Déja est ce possible ?
    Si oui , pouvez vous m'aider

    Merci a tous

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Décembre 2011
    Messages : 45
    Points : 27
    Points
    27
    Par défaut
    Voici le code final pour ceux que cela intéresse :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Sub CreerOuvrirWord()
    Dim NomDoc As String
    Dim Chemin As String
    Dim appWD As New Word.Application
    Dim oDoc As Word.Document
    Dim Modéle As String
    Modéle = ThisWorkbook.Path & "\Modéles.dotx"
    nom = Cells(ActiveCell.Row, 3) & " " & " "
    NomDoc = nom & ".doc"
    If Len(nom) = 1 Then Exit Sub 'si la ligne ne contient ni nom ni prénom on quitte
    Chemin = ActiveWorkbook.Path & "\Mon Fichier Clients\" & NomDoc 'à adapter ici répertoire courant
    On Error Resume Next
    Set appWD = CreateObject("Word.Application")
    If Err.Number <> 0 Then
        Set appWD = CreateObject("Word.Application")
    End If
    On Error GoTo 0
    If Dir(Chemin) <> "" Then
        Set oDoc = appWD.Documents.Open(Chemin)
    Else
        Set oDoc = appWD.Documents.Add(Modéle)
        With oDoc
            With .Sections(1).Headers(wdHeaderFooterPrimary).Range 'ajout d'un en-tête contenant le nom
                .Font.Bold = True 'en gras
                .Font.Italic = True 'en italique
                .Text = "Fiche de soin de " & nom
            End With
            .SaveAs Chemin
        End With
    End If
    appWD.Visible = True
    appWD.Activate
     
    End Sub
    Merci quand même de votre aide @@@+++

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

Discussions similaires

  1. [XL-2007] Créer un fichier word depuis excel
    Par a.faurie dans le forum Excel
    Réponses: 4
    Dernier message: 06/11/2013, 08h22
  2. [XL-2002] Comptage de fichiers word depuis excel
    Par Pegase45 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/12/2011, 17h54
  3. [XL-2007] VBA Ouvrir Fichier word depuis Excel
    Par Floorfiler dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/01/2011, 21h18
  4. Ouverture d'un fichier Word depuis Excel
    Par franck71 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 05/07/2008, 23h33
  5. Question sur accès fichier word depuis excel (VBA)
    Par jerome.grange dans le forum VBA Word
    Réponses: 6
    Dernier message: 22/09/2006, 17h34

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