remplir des signets avec Excel

sarah.geek

XLDnaute Nouveau
Bonjour,

Mon but est de remplir des signets d'un document Word avec une macro Excel, j'ai trouvé énormément d'exemples mais pas celui que je veux puisque 'au lieu d'un chemin fichier bien définit je veux qu'une boite de dialogue s'ouvre et que je modifie ce fichier et ensuite l’enregistrer via une variable définit

Code:
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Dim i As Byte
 
    Set WordApp = CreateObject("word.application")    'ouvre une session Word
    Set WordDoc = WordApp.Documents.Open("monDocument.doc")    'ouvre le document Word
    WordApp.Visible = False    'Word est masqué pendant l'opération
 
    For i = 1 To 3
        'les signets du document Word sont nommés Signet1 , Signet2 , Signet3
        WordDoc.Bookmarks("Signet" & i).Range.Text = Cells(i, 1)
    Next i
 
    WordApp.Visible = True    'affiche le document Word
    'WordDoc.PrintOut 'Pour imprimer le doc obtenu
 
    'WordDoc.Close True 'ferme le document word en sauvegardant les données
    'WordApp.Quit 'ferme la session Word
 

tototiti2008

XLDnaute Barbatruc
Re : remplir des signets avec Excel

Bonjour sarah,

Personne comprend ce que je veux?

Pas très clair en effet

au lieu d'un chemin fichier bien définit je veux qu'une boite de dialogue s'ouvre et que je modifie ce fichier et ensuite l’enregistrer via une variable définit

La boite de dialogue pour sélectionner le fichier word à ouvrir, je vois bien mais que veux-tu dire par

et que je modifie ce fichier et ensuite l’enregistrer via une variable définit
 

tototiti2008

XLDnaute Barbatruc
Re : remplir des signets avec Excel

Re,

Pour la boite de dialogue, tu peux chercher du côté de FileDialog
L'aide VBA est bien faite dessus

un truc du genre

Code:
    Dim Cheminfic As String, fd As FileDialog
    Set fd = Application.FileDialog(msoFileDialogFilePicker)
    With fd
        .AllowMultiSelect = False
        .Filters.Clear
        .Filters.Add "Document Word", "*.docx;*.doc"
        If .Show = -1 Then
            Cheminfic = .SelectedItems(1)
        End If
    End With
    If Cheminfic = "" Then Exit Sub

à ajouter au début de ton code
Cheminfic contiendra l'adresse du fichier Word à ouvrir
 

tototiti2008

XLDnaute Barbatruc
Re : remplir des signets avec Excel

Re,

Version avec ton code à la suite :

Code:
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Dim i As Byte
Dim Cheminfic As String, fd As FileDialog

    Set fd = Application.FileDialog(msoFileDialogFilePicker)
    With fd
        .AllowMultiSelect = False
        .Filters.Clear
        .Filters.Add "Document Word", "*.docx;*.doc"
        If .Show = -1 Then
            Cheminfic = .SelectedItems(1)
        End If
    End With
    If Cheminfic = "" Then Exit Sub

     Set WordApp = CreateObject("word.application")    'ouvre une session Word
    Set WordDoc = WordApp.Documents.Open(Cheminfic)    'ouvre le document Word
    WordApp.Visible = False    'Word est masqué pendant l'opération
 
    For i = 1 To 3
        'les signets du document Word sont nommés Signet1 , Signet2 , Signet3
        WordDoc.Bookmarks("Signet" & i).Range.Text = Cells(i, 1)
    Next i
 
    WordApp.Visible = True    'affiche le document Word
    'WordDoc.PrintOut 'Pour imprimer le doc obtenu
 
    'WordDoc.Close True 'ferme le document word en sauvegardant les données
    'WordApp.Quit 'ferme la session Word
 

Discussions similaires

Réponses
11
Affichages
2 K

Statistiques des forums

Discussions
312 506
Messages
2 089 111
Membres
104 037
dernier inscrit
damsau