Bonjour,
J'ouvre une nouvelle discussion car je ne pense pas que ce sujet ai déjà été traité ou alors je ne l'ai pas trouvé.
J'ai récupéré sur le forum, un code pour envoyer un tableau Excel vers Word, je l'ai adapté à mon document et tout fonctionne très bien.
Je souhaite maintenant pouvoir répéter les lignes d'en-tête du tableau envoyé dans Word car celui-ci est à chevale sur deux pages.
Voilà ce que j'ai essayé (voir code), mais ça ne fonctionne pas avec le tableau envoyé depuis Excel. Par contre s'il y a déjà un autre tableau à cheval sur deux pages dans le document initial, les lignes d'en-tête de celui-ci sont répétées.
Pour info mon tableau contient des cellules fusionnées, et je me demande si le problème ne vient pas de là.
Je ne trouve aucune piste sur le forum à croire que personne n'a jamais été confronté à ce problème.
Merci de bien vouloir m'aider.
J'ouvre une nouvelle discussion car je ne pense pas que ce sujet ai déjà été traité ou alors je ne l'ai pas trouvé.
J'ai récupéré sur le forum, un code pour envoyer un tableau Excel vers Word, je l'ai adapté à mon document et tout fonctionne très bien.
Je souhaite maintenant pouvoir répéter les lignes d'en-tête du tableau envoyé dans Word car celui-ci est à chevale sur deux pages.
Voilà ce que j'ai essayé (voir code), mais ça ne fonctionne pas avec le tableau envoyé depuis Excel. Par contre s'il y a déjà un autre tableau à cheval sur deux pages dans le document initial, les lignes d'en-tête de celui-ci sont répétées.
Pour info mon tableau contient des cellules fusionnées, et je me demande si le problème ne vient pas de là.
Je ne trouve aucune piste sur le forum à croire que personne n'a jamais été confronté à ce problème.
Merci de bien vouloir m'aider.
Code:
Sub tableau_vers_doc()
Dim oWdApp As Object 'Word.Application
Dim oWdDoc As Object 'Word.Document
'Créer une instance de word
Set oWord = CreateObject("Word.Application")
'Copier une plage depuis Excel
Sheets("Feuil1").Select
range("A1:E24").Select
Selection.Copy
'Ouvrir un nouveau document
oWord.Documents.Open (ThisWorkbook.Path & "\essai.docx")
'rendre le document word visible
oWord.Visible = True
'cherche le signet dans la feuille word
oWord.Selection.Goto What:=wdGoToBookmark, Name:="Signet1"
'Coller la plage dans Word
oWord.Selection.PasteAndFormat (wdPasteDefault)
'aligne le tableau
oWord.Selection.Tables(1).Rows.SetLeftIndent LeftIndent:=-25, RulerStyle:= _
wdAdjustNone
'répète les ligne d'en-tête des tableaux
Dim oTbl As Table
For Each oTbl In ActiveDocument.Tables
oTbl.Rows(1).Select
oTbl.Rows(1).HeadingFormat = True
Next oTbl
'Annuler le mode couper/copier
Application.CutCopyMode = False
End Sub
Dernière édition: