12. august 2009 - 22:58
Der er
5 kommentarer og
1 løsning
Indholdsfortegnelsens link til Overskrifterne skal også virke når dokumentbeskyttelsen er slået til !
Jeg har et dokument som skal være beskyttet. I dokumentet er der et par sider med formular tekster, som skal være editerbare. Det er heller ikke et problem for mig.
MIT PROBLEM ER:
Når dokumentet er beskyttet, virker linkene i indholdsfortegnelsen ikke. I et ubeskyttet dokument, kan man klikke på en linje i indholdsfortegnelsen, og så springer man hen på den tilsvarende overskrift i dokumentet.
Hvordan bibeholder man denne funktion i et beskyttet dokument?
12. august 2009 - 23:39
#2
Det har jeg prøvet. Det syntes jeg også virkede logisk, men problemet er noget med at "endestationen" for linket er beskyttet. Uanset hvad jeg gør så havner jeg ved det første formularfelt jeg har i dokumentet, efter indholdsfortegnelsen.
Formular felterne virker til gengæld rigtigt godt.
13. august 2009 - 00:28
#3
Det vil være nødvendigt med en makro, som fjerner dokumentbeskyttelsen, opdaterer indholdsfortegnelsen og beskytter dokumentet igen. Makroen kan f.eks. se sådan ud:
Sub OpdaterBeskyttetIndholdsfortegnelse()
Dim TOC As TableOfContents
With ActiveDocument
If .ProtectionType <> wdNoProtection Then
.Unprotect
End If
For Each TOC In .TablesOfContents
TOC.Update
Next TOC
.Protect Type:=wdAllowOnlyFormFields, _
NoReset:=True
End With
End Sub
Men alle brugerne skal jo have adgang til makroen. Hvordan det bedst gøres afhænger af, hvor brugerne er i forhold til dig. Du kan gemme makroen i dokumentet, som indeholder selve formularen (hvis det er en formular til "genbrug": gem formularen som skabelon inkl. makroen). For at brugerne kan udnytte makroen, kan du f.eks. lave en tastaturgenvej eller en knap i en værktøjslinje (eller i Hurtig adgang, hvis det er 2007). En tredje mulighed er - i selve formularen - at indsætte et MacroButton-felt, som kalder makroen. Hvis det er en formular, der skal bruges af personer andre steder, skal du sikre dig, at det er OK med makroer (makrosikkerhed mm.).
Hvis indholdsfortegnelsen også skal opdateres ved print af formularen, skal du bruge to makroer mere i dokumentet/skabelonen (du må ikke ændre navnene på disse makroer, da makroerne skal overskrive de indbyggede print-kommandoer):
Sub FilePrint()
UpdateProtectedTOC
Dialogs(wdDialogFilePrint).Show
End Sub
Sub FilePrintDefault()
UpdateProtectedTOC
ActiveDocument.PrintOut Background:=False
End Sub