Avatar billede pfp Nybegynder
18. november 2008 - 13:42 Der er 3 kommentarer og
1 løsning

Problem med automatisk genererede felter (VSTO)

Jeg indsætter et felt i en tabel hvor der fx står ”Tabel 1: ” ved at bruge:
Globals.ThisAddIn.Application.ActiveDocument.Fields.Add(Globals.ThisAddIn.Application.Selection.Range, wdFieldType.wdFieldSequence, “Tabel 1”)

Feltet bliver indsat på en mørk baggrund og indsættes derfor med hvid skrifttype.

Mit problem består i at når der så manuelt skal indsættes en krydshenvisning til tabellen (Indsæt --> Reference --> Krydshenvisning) bliver henvisningen også indsat med samme formatering som det der henvises til, altså med hvid skrift – og det fungerer ikke så godt på alm. hvid baggrund ;)

Nogen der har en idé eller idet hele taget kan afklare om der overhovedet er noget at gøre?
Avatar billede Lene Fredborg Ekspert
18. november 2008 - 18:38 #1
Er skriften decideret defineret til at være hvid?
Hvis ja og hvis baggrundsfarven er sort: Du kan undgå problemet, hvis skriften (hvor feltet indsættes) IKKE sættes til hvid men i stedet automatisk (wdColorAutomatic i VBA). Teksten vil da automatisk blive hvid på sort baggrund og sort på hvid baggrund.

Hvis det derimod ikke er sort, der er baggrund, kan du ikke være sikker på, at skriften bliver hvid – og så skal der andre løsninger til.
Avatar billede pfp Nybegynder
15. december 2008 - 16:17 #2
Hej.

Automatisk farve dur desværre ikke da baggrundsfarven kan have en vilkårlig farve.
Avatar billede Lene Fredborg Ekspert
15. december 2008 - 18:23 #3
Jeg postede nedenstående for et par timer siden, men det er ikke dukket op - derfor prøver jeg igen:

Jo, der er en løsning. Problemet kan løses ved at tilføje en parameter (switch) til krydshenvisnings-feltet. Men det betyder, at det er noget, brugeren selv skal sørge for, når han/hun indsætter henvisningen. Fremgangsmåden kan være:

1. Marker krydshenvisningsfeltet med den hvide tekst og tast Shift+F9 for at få vist feltkoden i stedet for resultatet. Feltkoden afhænger af, hvilken type krydshenvisning, der er indsat. Det kan f.eks. se sådan ud:

{ REF MinTabel \h }

Føj nu følgende til mellem teksten i feltet og slutklammen (Vigtigt: mellemrum både efter * og efter CharFormat):

\* CharFormat

I eksemplet vil koden nu se sådan ud:

{ REF MinTabel \h \* CharFormat }

Tast Shift+F9 for igen at skifte til visning af resultatet. Marker feltet og Tast F9 for at opdatere feltet. Nu skulle det optræde med samme formatering som _første_ bogstav i selve feltkoden (dvs. som ”R” i ”REF”).
Avatar billede pfp Nybegynder
19. december 2008 - 15:01 #4
Tak for hjælpen.
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



Seneste spørgsmål Seneste aktivitet
I dag 06:10 Excel åbner fil i kæmpe format Af Aske i Excel
I går 22:00 Datafordeler Af Lsk i PHP
I går 12:37 Summere beløb pr. dato Af TTA i Excel
31/1022:44 Tilslutte chassic fans Af viking69 i PC
31/1020:28 LED lysstofrør Af ErikHg i Fri debat