Macro copier coller special tableau excel vers word

betabasic

XLDnaute Nouveau
Bonjour,


Je voudrais créer une macro permettant de copier coller des tableaux excel dans un document word. J'ai essayé d'enregistrer la macro mais ça ne fonctionne pas...
Je travaille sous excel et word 2007 et je ne connais pas le langage VBA.

Grâce à cette macro, je voudrais :

1.copier le tableau situé de la cellule F4 à la cellule T14 de l’onglet “PROJET“ du fichier excel.

2.collage spécial dans un fichier word "Image métafichier amélioré"

3.passer une ligne dans le fichier word

4.copier le tableau situé de la cellule F4 à la cellule T14 de l’onglet “PROJET“ du fichier excel.

et ainsi de suite pour une trentaine de tableaux.


Je voudrais pouvoir faire la même chose avec collage spécial “Feuille de calcul Microsoft Office Excel (Code) Objet“.


Je vous remercie par avance de votre aide et de vos explications (pas à pas si possible vu mon niveau en VBA).


BB
 
Dernière édition:

GuillaumA

XLDnaute Occasionnel
Re : Macro copier coller special tableau excel vers word

Bonjour,

Code:
Sub ToWords() 'Transform in Words document
Dim docWord As Object
Dim appWord As Object
tablo = Range("F4:T14").Value
Set appWord = CreateObject("Word.Application")
appWord.Visible = False
Set docWord = appWord.Documents.Open(ActiveWorkbook.Path & "\[COLOR="Red"]Image métafichier amélioré.doc[/COLOR]")'ton modèle de doc word
    With docWord
        .Tables.Add .Bookmarks("[COLOR="Red"]Tableau[/COLOR]").Range, UBound(tablo, 1), UBound(tablo, 2) [COLOR="Green"]'en rouge Nomme la zone sur ton word ou tu veux que ton tableau apparaîsse.[/COLOR]
        For i = 1 To UBound(tablo, 1)
            For j = 1 To UBound(tablo, 2)
                .Tables(1).Cell(i, j).Range.Text = tablo(i, j)
            Next
        Next
        .Tables(1).AutoFitBehavior 2
        .SaveAs ActiveWorkbook.Path & "\Image métafichier amélioré-1.doc"
        .Close
    End With
appWord.Quit
End Sub

Ca ne répond pas à toutes tes questions mais cela te met déjà sur la voie.

Cordialement,
Guillaume
 

gilbert_RGI

XLDnaute Barbatruc
Re : Macro copier coller special tableau excel vers word

Bonjour

ce code permet de copier le tableau A1 C6 et de l'envoyer dans le document "fichier.doc" se trouvant dans le même répertoire que le xls
il sauvegarde le doc et le referme

Code:
Sub EnvoyerDonneesExcelVersWord()
    Dim DocWord As Word.Document
    Dim AppWord As Word.Application
    Set AppWord = New Word.Application
    Application.DisplayAlerts = True
    AppWord.ShowMe
    AppWord.Visible = True
    'Ouvre le document Word
    Set DocWord = AppWord.Documents.Open(ThisWorkbook.Path & "\Fichier.doc", ReadOnly:=False)
    ' Copie les données Excel
    ThisWorkbook.Worksheets("Feuil1").Range("A1:C6").Copy
    ' Colle les données dans Word
    DocWord.Range.PasteSpecial
    Application.CutCopyMode = False
    DocWord.Application.ActiveDocument.Save
    AppWord.Application.Quit
End Sub
 

betabasic

XLDnaute Nouveau
Re : Macro copier coller special tableau excel vers word

Tout d'abord un grand merci pour vos réponses.

Le schmilblik progresse mais il reste encore des obstacles à franchir...

Par rapport à la solution proposée par Guillaume, pourrais-tu être plus explicite quand tu dis "en rouge Nomme la zone sur ton word ou tu veux que ton tableau apparaîsse." Je ne vois pas trop ce que cela signifie concrétement...

Avec l'apport de Gilbert_RGI j'ai pu créer la macro suivante :

Sub Macro3()
'
' Macro3 Macro
Dim oWdApp As Object 'WordA.Application
Dim oWdDoc As Object 'Word.Document
Set oWdApp = CreateObject("Word.Application")
Set oWdDoc = oWdApp.Documents.Add
oWdApp.Visible = True
ActiveSheet.Range("F4:T14").Copy
oWdApp.Selection.PasteSpecial
Application.CutCopyMode = False
'
ActiveWorkbook.Save
Application.Run "'TEST MEGA V2 bis Benchmark_SD_1002 V2k7.xlsm'!Macro3"
End Sub


Cependant il manque le ciollage spécial en "Image métafichier amélioré" ainsi que le saut de ligne dans le document word afin de pouvoir coller les auters tableaux à la suite.

Ce sont mes premiers pas en VBA, donc soyez indulgent avec moi si je ne percute pas tout de suite.

Merci encore


BB
 

betabasic

XLDnaute Nouveau
Re : Macro copier coller special tableau excel vers word

Je progresse doucement vers la solution mais je n'y suis pas encore...

Pour l’instant je suis arrivé à ça :

Sub Macro4()


' Macro4 Macro
Dim oWdApp As Object 'WordA.Application
Dim oWdDoc As Object 'Word.Document
Set oWdApp = CreateObject("Word.Application")
Set oWdDoc = oWdApp.Documents.Add
oWdApp.Visible = True
ActiveSheet.Range("F4:T14").Copy
oWdApp.Selection.PasteSpecial
Application.CutCopyMode = False
oWdApp.Selection.TypeParagraph
ActiveSheet.Range("AA6:AL23").Copy
oWdApp.Selection.PasteSpecial
Application.CutCopyMode = False
oWdApp.Selection.TypeParagraph
ActiveWorkbook.Save


End Sub

Mais il me manque le collage special en Image métafichier amélioré. J’ai essayé de remplacer la ligne
oWdApp.Selection.PasteSpecial
par
oWdApp.Selection.PasteAnd Format

Mais ça ne fonctionne pas. Un message d’erreur apparaît : Erreur d’exécution ‘450’ Nombre d’arguments incorrect ou affectation de propriétés incorrectes en surlignant en jaune la ligne
oWdApp.Selection.PasteAnd Format


Merci par avance pour votre aide et vos explications.

BB
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 472
Messages
2 088 709
Membres
103 928
dernier inscrit
MIKETUAU