Discussion:
Pagina's in secties tellen
(te oud om op te antwoorden)
WMR
2005-12-02 13:48:02 UTC
Permalink
Hallo,

Ik heb een document met verschillende secties.
Ik moet op een bepaald moment weten hoeveel pagina's er in een bepaalde
secties vallen.

Nu kan ik met VBA het totaal aantal pagina's in het documet tellen:
AantalPaginas = Selection.Information(wdNumberOfPagesInDocument)

Maar hoe tel ik nu het aantal pagina's in bijv. sectie 2?

Ik wil geen veld invoegen in het document, zoals onderstaand.
Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _
"SECTIONPAGES ", PreserveFormatting:=True

Bedankt
WMR
Cooz
2005-12-09 14:28:03 UTC
Permalink
Dag WMR,

Het is inderdaad vreemd dat dit met VBA niet netjes is uit te lezen.

Ik zou ongeveer zoiets doen:
- een teller bijhouden voor het huidige bladzijnummer
(Selection.Information(wdActiveEndPageNumber))
- met de volgende code in een lus bladeren naar het eind van het document,
en onderweg het aantal bladzijden berekenen zo gauw
Selection.Information(wdActiveEndSectionNumber) een andere sectie detecteert.

With Application.Browser
.Target = wdBrowsePage
.Next
End With

Daar moet uit te komen zijn.

Succes,
Cooz.

PS: Heb je hier iets aan, klik dan svp op Yes bij "Was this post helpful to
you?". Bedankt.
Post by WMR
Hallo,
Ik heb een document met verschillende secties.
Ik moet op een bepaald moment weten hoeveel pagina's er in een bepaalde
secties vallen.
AantalPaginas = Selection.Information(wdNumberOfPagesInDocument)
Maar hoe tel ik nu het aantal pagina's in bijv. sectie 2?
Ik wil geen veld invoegen in het document, zoals onderstaand.
Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _
"SECTIONPAGES ", PreserveFormatting:=True
Bedankt
WMR
WMR
2005-12-13 14:09:02 UTC
Permalink
Hallo Cooz,

Je hebt me op het goede spoor gezet.
Ik één document heb ik 2 brieven aan 2 geadresseerden. Onderwerp en inhoud
zijn het zelfde.

Voor beide brieven moet een andere koptekst komen, terwijl de eerste pagina
afwijkend moet zijn. Ik heb het voor elkaar met onderstaande code.

++++
Sub Koptekst_2_Documenten()

Selection.HomeKey Unit:=wdStory

AantalPaginas = Selection.Information(wdNumberOfPagesInDocument)

For i = 1 To AantalPaginas
With Application.Browser
.Target = wdBrowsePage

SectieNr = Selection.Information(wdActiveEndSectionNumber)
HuidigPagNum = Selection.Information(wdActiveEndAdjustedPageNumber)

If HuidigPagNum = 2 Then
If SectieNr = 1 Then
ActiveWindow.ActivePane.View.SeekView =
wdSeekCurrentPageHeader
Selection.TypeText Text:="Koptekst 1 wordt gevuld."
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
ElseIf SectieNr = 2 Then
ActiveWindow.ActivePane.View.SeekView =
wdSeekCurrentPageHeader
Selection.TypeText Text:="Koptekst 2 wordt gevuld."
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End If
End If

.Next
End With
Next i

End Sub

++++

Bedankt!
WMR
Post by Cooz
Dag WMR,
Het is inderdaad vreemd dat dit met VBA niet netjes is uit te lezen.
- een teller bijhouden voor het huidige bladzijnummer
(Selection.Information(wdActiveEndPageNumber))
- met de volgende code in een lus bladeren naar het eind van het document,
en onderweg het aantal bladzijden berekenen zo gauw
Selection.Information(wdActiveEndSectionNumber) een andere sectie detecteert.
With Application.Browser
.Target = wdBrowsePage
.Next
End With
Daar moet uit te komen zijn.
Succes,
Cooz.
PS: Heb je hier iets aan, klik dan svp op Yes bij "Was this post helpful to
you?". Bedankt.
Post by WMR
Hallo,
Ik heb een document met verschillende secties.
Ik moet op een bepaald moment weten hoeveel pagina's er in een bepaalde
secties vallen.
AantalPaginas = Selection.Information(wdNumberOfPagesInDocument)
Maar hoe tel ik nu het aantal pagina's in bijv. sectie 2?
Ik wil geen veld invoegen in het document, zoals onderstaand.
Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _
"SECTIONPAGES ", PreserveFormatting:=True
Bedankt
WMR
Loading...