Bonjour a tous,
(desole pour les accents, je suis sur un clavier QWERTY)
J'ai deux documents 1 word (PESG MOM Test.docm [je ne peux pas mettre le .docm donc je mets le .docx]) et 1 excel (Excel for MOM.xlsx).
Mon but, extraire les informations de mon fichier EXCEL vers mon fichier WORD grace a une macro dans ce dernier (word).
J'ai bien reussi a faire une macro pour extraire les informations mais je souhaterais que la macro selectionne automatiquement les cellules pleines de mon fichier excel du genre :
Cependant, je n'arrive pas a implementer cela dans ma macro.
De plus, lorsque les informations se collent dans le tableau du fichier WORD, les cellules contenant les titres des colonnes changent de taille alors que je l'ai aies bloquees grace a la macro et par le menu de tableau.
Autre contrainte, il faut que je sois dans la premiere cellule de mon tableau sur mon fichier WORD pour que les informations se remplissent au bonne endroit :/
Si quelqu'un a une solution pour que cela se copie automatiquement en dessous des cellules de titre, je suis preneur
Voici ma macro:
En vous remerciant par avance
Codialement,
Delux
(desole pour les accents, je suis sur un clavier QWERTY)
J'ai deux documents 1 word (PESG MOM Test.docm [je ne peux pas mettre le .docm donc je mets le .docx]) et 1 excel (Excel for MOM.xlsx).
Mon but, extraire les informations de mon fichier EXCEL vers mon fichier WORD grace a une macro dans ce dernier (word).
J'ai bien reussi a faire une macro pour extraire les informations mais je souhaterais que la macro selectionne automatiquement les cellules pleines de mon fichier excel du genre :
Code:
Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Cependant, je n'arrive pas a implementer cela dans ma macro.
De plus, lorsque les informations se collent dans le tableau du fichier WORD, les cellules contenant les titres des colonnes changent de taille alors que je l'ai aies bloquees grace a la macro et par le menu de tableau.
Autre contrainte, il faut que je sois dans la premiere cellule de mon tableau sur mon fichier WORD pour que les informations se remplissent au bonne endroit :/
Si quelqu'un a une solution pour que cela se copie automatiquement en dessous des cellules de titre, je suis preneur
Voici ma macro:
Code:
Sub Import()
Dim MyXL As New Excel.Application
Set MyXL = New Excel.Application
Set MyXL = GetObject(, "Excel.Application")
MyXL.Workbooks.Open "C:\Documents and Settings\clt\Desktop\PESG\Test\Excel for MOM.xlsx"
'Selection des donnees sur le fichier excel A2:E(derniere cellule remplie)
MyXL.Range("A2:E40").Select 'a modifier par la derniere ligne pleine de mon tableau excel
'Copy
MyXL.Selection.Copy
'Activation du fichier WORD PESG MOM test
Windows("PESG MOM test.docx").Activate
'Selection de la premiere ligne en dessous du titre
Selection.MoveDown Unit:=wdLine, Count:=1
Selection.MoveRight Unit:=wdWord, Count:=5, Extend:=wdExtend
Selection.MoveRight Unit:=wdCharacter, Count:=5, Extend:=wdExtend
Selection.Tables(1).AutoFitBehavior (wdAutoFitFixed)
Selection.Tables(1).AutoFitBehavior (wdAutoFitFixed)
'Coller par dessus les anciennes informations
Selection.PasteAndFormat Type:=wdTableOverwriteCells
'Ajustement a la mise en page
Selection.MoveUp Unit:=wdLine, Count:=1
Selection.Tables(1).AutoFitBehavior (wdAutoFitContent)
Selection.Tables(1).AutoFitBehavior (wdAutoFitContent)
MyXL.Quit
Set MyXL = Nothing
End Sub
En vous remerciant par avance
Codialement,
Delux
Pièces jointes
Dernière édition: