Avatar billede Blip2000 Nybegynder
19. august 2010 - 14:53 Der er 5 kommentarer og
1 løsning

At finde af _Refxxxx for en overskrift

Når jeg opretter en krydsreference til f.eks. overskrift 6.22, indsætter Word et felt med { REF _Ref158534585 \r \h }

Antageligvis opretter Word så samtidig et bogmærke ved overskriften 6.22. I hvert fald kan jeg ved at markere overskriften og kigge på Selection.Range.BookmarkID få et unikt tal.

Spørgsmål: Hvordan finder jeg ud af, hvilken _Refxxxx kode Word har tildelt min overskrift 6.22?
Avatar billede Blip2000 Nybegynder
19. august 2010 - 14:59 #1
Ups... Word 2003.
Avatar billede Lene Fredborg Ekspert
19. august 2010 - 16:52 #2
Det er korrekt, at Word opretter et bogmærke, når du indsætter en krydshenvisning til en overskrift. Bogmærket omslutter overskriften minus afsnitstegnet.
Bogmærket har det navn, som du kan udlede direkte af feltkoden i krydshenvisningen ef-ter "REF", i dit eksempel _Ref158534585. "\r" betyder, at det er nummeret og ikke teksten, der bliver indsat, og "\h" bevirker, at feltet virker som hyperlink.
Ref-bogmærker har altid formen "_RefXXXXXXXXX", hvor X'erne er et unikt nummer. Hvis det er henvisninger til sidetal, starter feltkoden med "PAGEREF" i stedet for "REF", men bogmærkerne har fortsat samme syntaks.
Man kan tilsvarende lave krydshenvisninger til bogmærker, som er oprettet manuelt. Hvis du f.eks. markerer en tekst og laver et bogmærke med navnet "mintekst", vil et felt med koden { REF mintekst \h } virke som krydshenvisning til bogmærket.
Hvis du - når du skal bruge bogmærkets navn - har fat i et tilhørende krydshenvisnings-felt, kan du derfor altid fange navnet fra det pågældende felt. Hvis det ikke er tilfældet, må du forklare, i hvilken sammenhæng du skal kunne få fat i bogmærkets navn.
På min hjemmeside har jeg lavet nogle demoer, som viser noget om problemløsning i for-hold til krydshenvisninger. De kan muligvis være til nytte, da de viser noget om, hvordan bogmærkerne og felterne hænger sammen. Du finder demoerne her:
http://www.thedoctools.com/index.php?show=wt_cross-reference_trouble
Avatar billede Lene Fredborg Ekspert
19. august 2010 - 16:54 #3
Hovsa, teksten ovenfor kom til at stå lidt tæt (afstandende forsvandt). Håber det går endda.
Avatar billede Blip2000 Nybegynder
19. august 2010 - 21:18 #4
Hej Lene

:-) Den side var jeg allerede faldet over, i min egen google-research.

Jeg har fundet løsningen i mellemtiden. Jeg vil prøve at omformulere problemet, jeg forsøgte at løse:

Hvodan finder jeg de krydsreferencer, der er til afsnit "6.2 Generelle overvejelser"? Vel at mærke uden at vide, om der overhovedet er nogle referencer til afsnittet.

Det lykkedes med noget VBA kode, jeg har det ikke lige her, men det drejer sig om at vise skjulte bogmærker, finde de bogmærker som ligger i den range der har overskriften, og derefter gennemløbe alle dokumentets fields for at finde noget der matcher.

Du får pointene for en fyldig besvarelse og for din hjemmeside, der var med til at lede mig på rette vej.
Avatar billede Blip2000 Nybegynder
19. august 2010 - 21:19 #5
Hov. Jeg har vist glemt, hvordan man giver point. Du skal vist lægge et svar?
Avatar billede Lene Fredborg Ekspert
19. august 2010 - 22:51 #6
Fint at du fik det løst. Den løsning, du har fundet frem til, er lig med den, jeg ville have foreslået, hvis jeg havde vidst, hvad du ville opnå :-).
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester