Copier EXCEL coller WORD

Fermé
Lils_Bis Messages postés 57 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 28 décembre 2020 - Modifié par Lils_Bis le 17/05/2016 à 11:37
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 24 mai 2016 à 12:52
Bonjour,
J'ai un code qui me permet de copier des tableaux depuis EXCEL pour les coller sur un document WORD créé par mon programme. Seulement, je souhaiterai que vous m'aidiez à apporter une légère modifications à celui-ci. En effet, je souhaiterais faire un collage spécial, à savoir "Utiliser les styles de destination".

Je vous joins mon code aussi, si quelqu'un pouvait trouver cela, ça serait une grande aide pour moi !

Public Const wdLineBreak = 6

Sub Export_word()
    Dim NDF As String
    Dim WordApp As Object, WordDoc As Object
    Dim i As Integer, cl As Integer, lg As Integer

        NDF = ActiveWorkbook.Path & "\" & "Fiche_" & Format(Now(), "yyyymmdd_hhmm")
       
        On Error Resume Next
       
        Set WordApp = CreateObject("Word.Application")
        WordApp.Visible = True
       
        Set WordDoc = WordApp.Documents.Add
       
        With WordApp.Selection
            cl = Sheets("TAP").Range("IV1").End(xlToLeft).Column - 2
            For i = 1 To cl Step 4
                lg = Sheets("TAP").Cells(1, i).End(xlDown).Row
                Sheets("TAP").Range(Cells(1, i), Cells(lg, i + 3)).Copy
                .Paste
                .InsertBreak Type:=wdLineBreak
            Next i
        End With
       
        Application.CutCopyMode = False
        WordDoc.SaveAs NDF

        Set WordDoc = Nothing
        Set WordApp = Nothing
       
        MsgBox "Document Word créé"
       
End Sub


MERCI PAR AVANCE DE VOTRE TEMPS ET DE VOTRE AIDE ! ☺

A voir également:

3 réponses

jfqld Messages postés 9070 Date d'inscription jeudi 18 septembre 2008 Statut Membre Dernière intervention 28 mai 2018 123
17 mai 2016 à 16:10
copier un tableau excel dans word
dans Word il y a collage spécial
il suffit de cliquer sur coller avec les liaisons
et prendre feuilel microsoft office excel objet

0
Lils_Bis Messages postés 57 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 28 décembre 2020
17 mai 2016 à 16:23
Bonjour,
Oui je sais, la "difficulté" étant de le faire avec VBA dans l'optique d'automatiser ce procédé peu importe le nom de tableau à copier.
0
Lils_Bis Messages postés 57 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 28 décembre 2020
19 mai 2016 à 09:15
Personne ne voit quelque chose de réalisable là-dedans ? ☺
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
19 mai 2016 à 09:35
Bonjour,

Il suffit de coller avec liaison...
PasteSpecial link:=true

J'ai également ajouté :
WordApp.Quit
pour fermer word. Mais ça c'est toi qui voit...

Comme ceci :
Public Const wdLineBreak = 6

Sub Export_word()
    Dim NDF As String
    Dim WordApp As Object, WordDoc As Object
    Dim i As Integer, cl As Integer, lg As Integer

        NDF = ActiveWorkbook.Path & "\" & "Fiche_" & Format(Now(), "yyyymmdd_hhmm")
       
        On Error Resume Next
       
        Set WordApp = CreateObject("Word.Application")
        WordApp.Visible = True
       
        Set WordDoc = WordApp.Documents.Add
       
        With WordApp.Selection
            cl = Sheets("TAP").Range("IV1").End(xlToLeft).Column - 2
            For i = 1 To cl Step 4
                lg = Sheets("TAP").Cells(1, i).End(xlDown).Row
                Sheets("TAP").Range(Cells(1, i), Cells(lg, i + 3)).Copy
                .PasteSpecial Link:=True
                .InsertBreak Type:=wdLineBreak
            Next i
        End With
       
        Application.CutCopyMode = False
        WordDoc.SaveAs NDF
        WordApp.Quit
        Set WordDoc = Nothing
        Set WordApp = Nothing
       
        MsgBox "Document Word créé"
       
End Sub

0
Lils_Bis Messages postés 57 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 28 décembre 2020
24 mai 2016 à 12:00
Bonjour,
Tout d'abord je te remercie déjà de ton code !
La sortie WORD que me propose ton code n'est pas très esthétique (pas de création de tableau sous forme de grilles). Je joins ici, le document WORD affiché après exécution du programme. Je ne sais pas si tu as une idée pour corriger cela ?

https://www.cjoint.com/c/FEykaoyIPCf

Merci à toi ! :)

Bonne journée !
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744 > Lils_Bis Messages postés 57 Date d'inscription lundi 4 avril 2016 Statut Membre Dernière intervention 28 décembre 2020
24 mai 2016 à 12:52
Bonjour,

Avant de changer quoique ce soit, as tu essayé de mettre en forme ton tableau sous excel avant de déclencher ta macro?
0