J'ai besoin d'appeler un fichier Word à partir d'Excel, et de créer un modèle. Le modèle aura 3 images UpperLeft, Upper Right et l'image centrale.Insérer des images d'Excel à mot à travers le tableau
Je pensais que ce serait le meilleur résultat à travers la table.
De quelque raison que je ne peux pas créer la table à partir d'Excel ..
Private Sub CommandButton13_Click()
'Using early binding, not late-binding
Dim wsDoc As Word.Document
Dim wsApp As Word.Application
Dim wsRng As Word.Range
Dim wsTable as Word.Table
Dim intNoOfRows
Dim intNoOfColumns
Dim s As Word.InlineShape
Dim shp As Word.Shape
intNoOfRows = 4
intNoOfColumns = 2
Set wsApp = New Word.Application
wsApp.Visible = True
Set wsDoc = wsApp.Documents.Add
Set wsRange = wsDoc.Content
Set wsTable = wsDoc.Tables.Add(wsRange, intNoOfRows, intNoOfColumns)
wsTable.Borders.Enable = True
wsTable.Cell(1, 1).Range.InlineShapes.AddPicture _
UserForm1.txtImageLogoAdecco
wsTable.Cell(1, 2).Range.ParagraphFormat.Alignment = wdAlignParagraphRight
wsTable.Cell(1, 2).Range.InlineShapes.AddPicture _
UserForm1.txtImageLogoClient
Set wsRng = wsTable.Cell(2, 1).Range
With wsRng.Paragraphs.Add
wsTable.Cell(2, 1).Merge MergeTo:=wsTable.Cell(2, 2)
wsTable.Cell(2, 1).Height = 520
wsTable.Cell(2, 1).Range.Paragraphs.Add
wsTable.Cell(3, 1).Merge MergeTo:=objTable.Cell(3, 2)
wsTable.Cell(3, 1).Range.Text = "Prepared by:" & " " & UserForm1.txtPrepared
wsTable.Cell(4, 1).Merge MergeTo:=objTable.Cell(4, 2)
wsTable.Cell(4, 1).Range.ParagraphFormat.Alignment = wdAlignParagraphRight
wsTable.Cell(4, 1).Range.Text = "Belgrade," & " " & Format(Date, "MMMM DD, YYYY ")
Set wsRange = Nothing
Set wsTable = Nothing
Set wsDoc = Nothing
Set wsApp = Nothing
End Sub
Pourquoi vous préférez l'approche vba lorsqu'une table Excel contenant 3 images peut être facilement collée dans un document Word. – skkakkar
La description de votre problème et votre code ne correspondent pas, il est donc difficile de suivre ce que vous attendez de ce qui se passe ... 1) Si vous ne voulez pas enregistrer les modifications dans template.docm, utilisez Documents.Add pas Documents .Ouvrir. 2) Enlever le With ... End With autour de cette déclaration. 3) Les signets sont-ils déjà présents dans le document? J'ai l'impression que vous les voulez dans la table, mais vous insérez la table. Si vous ciblez des cellules dans la table, à la place? –
@CindyMeister exactement. S'il vous plaît, référez-vous à mon nouveau code mis à jour. J'ai réussi à insérer toutes les images dans la table (pour garder le formatage où je le veux), avec l'image de fond je veux le convertir en forme. Je veux envoyer iy derrière le texte, et enfin je veux déplacer le curseur de quelques lignes et écrire du texte. J'espère que c'est maintenant beaucoup plus clair. Merci! – Stefan0309