Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Macro pour copier un tableau de taille variable vers Word

bullbull2010

XLDnaute Nouveau
Bonjour,

voilà mon problème: je veux copier une partie d'un tableau excel vers Word, sauf que je veux le faire pour plusieurs tableaux, donc il faudrait que j'arrive à modifier à chaque fois la taille du tableau. pour cela j'ai cherché sur le net et j'ai trouvé cette methode, sauf qu'elle ne marche pas ( enfin je l'ai ajustée, elle n'était pas comme ça)


Sub Excel_Word()

Dim oWdApp As Object 'Word.Application
Dim oWdDoc As Object 'Word.Document
Dim c
Dim X As String


'Lancer une instance Word
Set oWdApp = CreateObject("Word.Application" )

'Ouvrir un nouveau document
Set oWdDoc = oWdApp.Documents.Add

'Rendre Word visible
oWdApp.Visible = True

' Dernière cellule non vide
c = Range("B65536" ).End(xlUp).Row
X = "B" & c

'Copier une plage depuis Excel
ActiveSheet.Range("A1:X" ).Copy



'Coller la plage dans Word
oWdApp.Selection.Paste

'Annuler le mode couper/copier
Application.CutCopyMode = False

End Sub



Je vous remercie pour votre aide.
 

ninbihan

XLDnaute Impliqué
Re : Macro pour copier un tableau de taille variable vers Word

Bonjour Bullbull,

A tester :

Code:
Sub Excel_Word()

Dim oWdApp As Object 'Word.Application
Dim oWdDoc As Object 'Word.Document
Dim C




'Lancer une instance Word
Set oWdApp = CreateObject("Word.Application")

'Ouvrir un nouveau document
Set oWdDoc = oWdApp.Documents.Add

'Rendre Word visible
oWdApp.Visible = True

' Dernière cellule non vide
C = Range("B65536").End(xlUp).Row

'Copier une plage depuis Excel
ActiveSheet.Range("A1:B" & C).Copy



'Coller la plage dans Word
oWdApp.Selection.Paste

'Annuler le mode couper/copier
Application.CutCopyMode = False

End Sub

Bonne journée,

Ninbihan
 

bullbull2010

XLDnaute Nouveau
Re : Macro pour copier un tableau de taille variable vers Word

Ooo merci ninbihan, je vois que t'as joué sur le string différemment, et ça marche bien!

maintenant, vu que je vais faire cette tâche pour chaque feuille de mon classeur, je rajoute uniquement une boucle for, pour le faire pour chaque feuille, à savoir,


'Rendre Word visible
oWdApp.Visible = True

For I = 2 To Worksheets.Count

' Dernière cellule non vide
C = Range("B65536").End(xlUp).Row




et à la fin je mets un end, mais je crois qu'il y a quelque chose qui manque, puisque ça marche pas...

une Correction?
 

ninbihan

XLDnaute Impliqué
Re : Macro pour copier un tableau de taille variable vers Word

Rebonjour,

Comme tu utilises le copier/coller, il faut donc que tu sélectionnes les feuilles successivement. Cela devient donc:
Code:
For I = 2 To Worksheets.Count
worksheets(i).select

Bon aprés midi,

Ninbihan
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…