Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/01/2012, 02h03   #1
Candidat au titre de Membre du Club
 
Homme
Inscription : 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 : 11
Points : 11
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
francky62000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 02h50   #2
Membre du Club
 
Inscription : mars 2009
Messages : 75
Détails du profil
Informations forums :
Inscription : mars 2009
Messages : 75
Points : 67
Points : 67
Salut,
Va voir .
A plus
__________________
Il y a 10 types de geeks, ceux qui savent compter en binaire et les autres...

Un geek, c'est quelqu'un qui croit qu'il y a 1024m dans 1km...
yorgh1234 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 16h52   #3
Candidat au titre de Membre du Club
 
Homme
Inscription : 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 : 11
Points : 11
Bonjour a tous , j'ai ce code :

Code :
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 ?
francky62000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/01/2012, 17h45   #4
Candidat au titre de Membre du Club
 
Homme
Inscription : 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 : 11
Points : 11
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
francky62000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 01h59   #5
Candidat au titre de Membre du Club
 
Homme
Inscription : 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 : 11
Points : 11
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 :
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
francky62000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/01/2012, 17h02   #6
Candidat au titre de Membre du Club
 
Homme
Inscription : 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 : 11
Points : 11
Voici le code final pour ceux que cela intéresse :

Code :
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 @@@+++
francky62000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h34.


 
 
 
 
Partenaires

Hébergement Web