Copier/coller des colonnes d'excel vers word - VB/VBA/VBS - Programmation
Marsh Posté le 13-06-2005 à 13:25:16
http://ericrenaud.free.fr/droitedde.htm  va voir ça ptéte ke sa peu tédé 
Marsh Posté le 13-06-2005 à 14:09:22
J'ai mis : 
 
Sub ThisWorkbook() 
 
     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("K:\Developpement\Liste.doc", ReadOnly:=False) 
 
     ' Copie les données Excel 
 
     ThisWorkbook.Worksheets("Feuil1" ).Column("G:G,E:E,C:C,A:A,B:B" ).Copy 
 
     ' Colle les données dans Word 
 
     DocWord.Range.PasteSpecial 
 
     Application.CutCopyMode = False 
 
     DocWord.Application.ActiveDocument.Save 
 
     AppWord.Application.Quit 
 
End Sub 
  
et j'ai un pb avec le "this workbook.worksheets". Il me dit "fonction ou variable attendu"!!!! 
Marsh Posté le 13-06-2005 à 14:14:54
j'ai corrigé cette erreur par Sub donnees() 
normal que ça ne fonctionne pas!! le nom est le même que celui du "sub" dpnc confusion!!!! 


Marsh Posté le 13-06-2005 à 14:20:08
nouvel erreur!!!  
  
 
ThisWorkbook.Worksheets("Feuil1" ).Range("G:G,E:E,C:C,A:A,B:B" ).Copy 
 
erreur 1004 : erreur définie par l'application ou par l'objet. ?????????  
 
  
   
   
  
C terrible!!!!! 
 
qu'est que je dois changer?????????????  
 
Marsh Posté le 13-06-2005 à 14:26:42
j'ai mis :  
 
 
 ' Copie les données Excel 
 
        ThisWorkbook.Worksheets("Feuil1" ).Range("G:G" ).Copy 
        ThisWorkbook.Worksheets("Feuil1" ).Range("E:E" ).Copy 
        ThisWorkbook.Worksheets("Feuil1" ).Range("C:C" ).Copy 
        ThisWorkbook.Worksheets("Feuil1" ).Range("A:A" ).Copy 
        ThisWorkbook.Worksheets("Feuil1" ).Range("B:B" ).Copy 
     ' Colle les données dans Word 
 
mais il ne tient compte que de la dernière ligne de code!!!! 
Il zappe les autres! 
???????????!!!!!!!!!!!!!!!!!!! 





Marsh Posté le 13-06-2005 à 14:56:09
je ne peux afficher qu'une seule colonne!!!!!!!!!! 
or je dois en afficher 5!!!! 








Marsh Posté le 13-06-2005 à 15:08:02
la colonne 1 est écrasée par la colonne 2 
la colonne 2 est écrasée par la colonne 3 
la colonne 2 est écrasée par la colonne 4 
la colonne 3 est écrasée par la colonne 5 
Donc je ne visualise que la 5ème colonne sur le doc word!
Marsh Posté le 14-06-2005 à 10:08:19
J'ai fait un test avec 
| ActiveSheet.Range("G:G,E:E,C:C,A:A,B:B" ).Copy | 
 
Mais ça copie toutes les colonnes de A à G. 
 
Peut-être créer le tableau dans Word et copier colonne par colonne.
Marsh Posté le 14-06-2005 à 10:32:12
l'"activeSheet.range" fonctionne bien mais il me donne toutes les colonnes. C bien la le pb! 
Marsh Posté le 17-06-2005 à 10:29:13
ActiveSheet.Range("G:G" ).Copy 
la tu copie 
en suite tu colle dans word 
et ainsi de suite 
 
@+
Marsh Posté le 17-06-2005 à 11:16:05
Je ne sais pas si ça vaut vraiment la peine de lui répondre. 
Voir: 
http://forum.hardware.fr/hardwaref [...] 2481-1.htm 
 
Il ne va pas nous dire si ça l'a aidé et va ouvrir un autre topic pour se lamenter qu'il n'y a personne...
Marsh Posté le 17-06-2005 à 14:30:28
Bonjour 
Désolé ne pas avoir répondu plutôt que maintenant. Ce n'est pas tout les jours que l'on part à l'étranger. 
OUI vos éléments m'ont aidés. merci 
Marsh Posté le 13-06-2005 à 11:08:34
Bonjour a tous! 
   
  
 
  
Est ce que quelqu'un pourrait me donner la solution à ce problème :
Selection.Copy
Shell ("winword" )
Selection.PasteAndFormat (wdPasteDefault)
je fais la sélection de mes colonnes, je copie, j'ouvre word et je veux coller ma sélection. La sélection, la copie et l'ouverture de word fonctionne mais pa le collage. Merci de bien vouloir me corriger.