Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[VBA Word 2007] Plaatje in Header

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik heb een marco geschreven die een plaatje in de koptekst zet

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Const sPic  As String = "C:\Afbeeldingen\1.jpg"
Const sBm   As String = "bmPic"
Dim oSec     As Word.Section
Dim oHead    As Word.HeaderFooter
Dim oShape   As Word.Shape
Dim iCnt     As Integer
Dim sName    As String
If Documents.Count = 0 Then Exit Sub
 Application.ScreenUpdating = False
 For Each oSec In ActiveDocument.Sections
    If oSec.Index > 0 And oSec.Index <= ActiveDocument.Sections.Count Then
        For Each oHead In oSec.Headers
          Set oShape = oHead.Shapes.AddPicture(sPic)
                With oShape
                    .Name = CStr("Pic" & iCnt)
                    .LockAspectRatio = msoTrue
                    .Height = 109
                    .Width = 464
                    .RelativeHorizontalPosition = wdRelativeHorizontalPositionPage
                    .RelativeVerticalPosition = wdRelativeVerticalPositionPage
                    .Left = CentimetersToPoints(0)
                    .Top = CentimetersToPoints(0)
                    .WrapFormat.AllowOverlap = True
                    .WrapFormat.Side = wdWrapBoth
                    .WrapFormat.DistanceTop = CentimetersToPoints(0)
                    .WrapFormat.DistanceBottom = CentimetersToPoints(0)
                    .WrapFormat.DistanceRight = CentimetersToPoints(0.32)
                    .WrapFormat.Type = wdWrapTight
                End With
            iCnt = iCnt + 1
        Next
    End If
  Next
  Set oShape = Nothing


Nu moet op de tweede pagina (als deze aanwezig is) een ander plaatje komen, maar ik krijg het niet voor elkaar.

Aan de code toevoegen
code:
1
DifferentFirstPageHeaderFooter = true

werkt gedeeltelijk, omdat hij nu een lege eerste pagina maakt, maar dat wil ik juist niet.

Ik las ook iets over
code:
1
.LinkToPrevious = False

maar dat werkt niet.

Ik heb al een hoop verschilledne stukjes code gebruikt, maar die heb ik niet bewaard.(kan ik dus ook niet laten zien)

[ Voor 0% gewijzigd door Verwijderd op 12-08-2009 15:32 ]


Verwijderd

nu worden alle headertypes hetzelfde ingesteld, terwijl er drie zijn : wdHeaderFooterFirstPage, wdHeaderFooterEvenPages & wdHeaderFooterPrimary.
daarnaast moet de pagesetup van de sectie eerst ingesteld worden via de reeds aangehaalde code om toe te laten verschillende headers te hebben.
en als je een opsomming doet van een verzameling (for each sectie...) dan is een test of de index van een element ervan binnen de verzameling ligt (If oSec.Index > 0 And oSec.Index <= ActiveDocument.Sections.Count Then ) uiteraard overbodig.

offtopic:niet nodig te groeten

[ Voor 3% gewijzigd door Verwijderd op 12-08-2009 15:33 ]


Verwijderd

Topicstarter
offtopic:niet nodig te groeten
[/quote]

Doe ik dat dan?