Sette inn et bilde på en bestemt side

October 11  by Eliza

Suman trenger å bruke en makro til å sette inn et bilde på side 10 i et bestemt dokument. Han lurer på om den beste måten, innenfor makro, å gå om dette.

Hvis du vil at bildet skal være den eneste på side 10, så oppgaven er ganske enkelt: Bruk makro for å finne side 10, setter inn bildet, og deretter sette inn et sideskift etter bildet. Dette humper så alt etter bildet opp av en side, slik at den gamle side 10 blir side 11, side 11 blir side 12, og så videre.

Sub InsertImage1 ()
Dim PicPath As String

PicPath = "C: \ Mine bilder \ Mine Skanner \ scan0002.jpg"
ActiveDocument.GoTo (Hva: = wdGoToPage, Count: = 10) .Velg
Selection.InlineShapes.AddPicture Filename: = PicPath, _
LinkToFile: = False, SaveWithDocument: = True
Selection.InsertBreak Type: = wdPageBreak
End Sub

Makroen setter inn bildet som et inline form. Hvis du foretrekker det, kan du sette bildet som en flytende form, som ville tillate teksten å vikle rundt bildet. Den følgende makro gjør det, så vel som sentrering av bildet i midten av siden:

Sub InsertImage2 ()
Dim PicPath As String
Dim aShape Som Shape

PicPath = "C: \ Mine bilder \ Mine Skanner \ scan0002.jpg"
ActiveDocument.GoTo (Hva: = wdGoToPage, Count: = 10) .Velg
Satt aShape = Selection.InlineShapes.AddPicture (Filename: = PicPath, _
LinkToFile: = False, SaveWithDocument: = True) .ConvertToShape
Med aShape
.WrapFormat.Type = WdWrapTight
.RelativeHorizontalPosition = WdRelativeHorizontalPositionPage
.RelativeVerticalPosition = WdRelativeVerticalPositionPage
.Øverst = WdShapeCenter
.Left = WdShapeCenter
.Velg
Avslutt med
End Sub

Hvis du ønsket ditt bilde for å erstatte et eksisterende bilde (kanskje med et oppdatert bilde), så den enkleste måten er å bare bruke et bokmerke til "merke" det eksisterende bildet. (Du trenger med andre ord, å bokmerke det aktuelle bildet på side 10. Det er mulig, selvfølgelig, at bokmerket kunne "flyte" til en annen side som du legger til eller fjerner informasjon fra dokumentet.) Følgende makro vil finne bokmerket (oppkalt BK1) og erstatte den med en innebygd form.

Sub InsertImage3 ()
Dim PicPath As String
Dim BmkName As String

PicPath = "C: \ Mine bilder \ Mine Skanner \ scan0002.jpg"
BmkName = "BK1"

Med ActiveDocument
Hvis .Bookmarks.Exists (BmkName) Then
Dim WrdPic Som Word.InlineShape
Satt WrdPic = .Bookmarks (BmkName) .Range _
.InlineShapes.AddPicture (PicPath, usann eller sann)
End If
Avslutt med
End Sub

WordTips er din kilde for kostnadseffektiv Microsoft Word trening. (Microsoft Word er den mest populære tekstbehandlingsprogrammet i verden.) Dette tipset (13139) gjelder for Microsoft Word 2007, 2010, og 2013.