Å få navnene på Definerte bokmerker

March 29  by Eliza

Sjansene er gode for at du allerede vet hvordan du bruker bokmerker. (Andre WordTips beskrive hvordan man skal definere og manipulere dem.) Hvis du oppretter makroer, kan du ha behov for å hente navnene på de bokmerkene som er definert i et dokument.

VBA kan du hente bokmerke navn ved å bruke navn eiendom med medlemmer av bokmerkesamling. Syntaksen til setningen er som følger:

x = ActiveDocument.Bookmarks (y) .name

der y er offset pekeren til bokmerkenavnet ønsket. Etter å utføre utsagnet, vil x inneholde navnet på bokmerket spesifisert av pekeren. For å gjøre denne funksjonen nyttig, bør du virkelig lese alle navnene bokmerket i en matrise, som du deretter kan manipulere. Følgende kode fragment vil gjøre triks:

Dim Bmk () As String
Dim x As Integer, J As Integer

x = ActiveDocument.Bookmarks.Count
ReDim Bmk (x)
For j = 1 til x
BMK (j) = ActiveDocument.Bookmarks (j) .name
Neste j

Legg merke til at denne koden fragment bruker ReDim uttalelse, noe som gjør at du kan dynamisk endre antall elementer i en matrise. Bakgrunnen for denne tilnærmingen er ganske enkel: Den Bmk rekke trenger å ha så mange elementer som det er definert bokmerker. Men kan du ikke vite før du utfører den tredje linjen i denne koden nøyaktig hvor mange det er. VBA krever at all dimensjonering (ved hjelp av Dim) gjøres før noen faktiske programkoden kjøres. Således er det første Dim for Bmk å tilfredsstille VBA og ReDim av Bmk er gjort for å sette rekken til den nødvendige størrelse.

WordTips er din kilde for kostnadseffektiv Microsoft Word trening. (Microsoft Word er den mest populære tekstbehandlingsprogrammet i verden.) Dette tipset (796) gjelder for Microsoft Word 97, 2000, 2002, og 2003. Du kan finne en versjon av dette tipset for Båndet av Word (Word 2007 og senere) her: Å få navnene på Definerte bokmerker.