Hur gör jag för att lägga in en bild i sidfoten/huvudfoten i Word? Den skall finnas med på varje sida... KAnske något sånt här? Ok. Har nu lyckats infoga en bild... Ett tips när det gäller vb + word är ju att spela in ett makro i word, och sen titta på koden för det makrot. Varför arbeta mot sellection objektet. När du direkt kan modifiera din bild??? Jag måste vara dum i huvet men jag lyckas inte... Det går jättebra att infoga bilden i sidhuvudet men jag lyckas inte flytta den...Problem med VB i Word
MarcusSv: Problem med VB i Word
Public Function InsertHeaderPicture(Document As Word.Document, Filename As String)
Dim HeaderRange As Word.Range
Set HeaderRange = Document.Sections(1).Headers(wdHeaderFooterPrimary).Range
HeaderRange.InlineShapes.AddPicture Filename, False, True
End Function
Public Function InsertFooterPicture(Document As Word.Document, Filename As String)
Dim FooterRange As Word.Range
Set FooterRange = Document.Sections(1).Footers(wdHeaderFooterPrimary).Range
FooterRange.InlineShapes.AddPicture Filename, False, True
End FunctionSv: Problem med VB i Word
Återstår bara att lyckas markera bilden för att sedan kunna formatera den
Någon som vet hur man markerar en bild?
MarcusSv: Problem med VB i Word
Då kan du spela in ett nytt makro, markera bildern, stänga av inspelningen, titta på koden och ser då hur man gör det med kod.
/PejganSv: Problem med VB i Word
Många som använder sig av inspelad kod vilket använder sig av selection. Man kan ju istället arbeta direkt mot det man ska förändra. Mycket mer effektivare.
Enkelt exempel:
Option Explicit
Private Sub Test()
Dim Shape As InlineShape
Set Shape = InsertHeaderPicture(ActiveDocument, "c:\Test.bmp")
Shape.Height = 150
Shape.Width = 300
End Sub
Public Function InsertHeaderPicture(Document As Word.Document, Filename As String) As InlineShape
Dim HeaderRange As Word.Range
Set HeaderRange = Document.Sections(1).Headers(wdHeaderFooterPrimary).Range
Set InsertHeaderPicture = HeaderRange.InlineShapes.AddPicture(Filename, False, True)
End FunctionSv: Problem med VB i Word
Du som skrev denna kod:
Private Sub Test()
Dim Shape As InlineShape
Set Shape = InsertHeaderPicture(ActiveDocument, "c:\Test.bmp")
Shape.Height = 150
Shape.Width = 300
End Sub
Public Function InsertHeaderPicture(Document As Word.Document, Filename As String) As InlineShape
Dim HeaderRange As Word.Range
Set HeaderRange = Document.Sections(1).Headers(wdHeaderFooterPrimary).Range
Set InsertHeaderPicture = HeaderRange.InlineShapes.AddPicture(Filename, False, True)
End Function
Den verkar som sagt bättre än att använda men frågan är hur man bestämmer positionen på bilen... Jag kan inte hitta någon funktion till inlineshape som har .left eller .top i sig
Marcus