Word sjabloon met besturingselementen

Status
Niet open voor verdere reacties.

webjuffer

Gebruiker
Lid geworden
17 mei 2007
Berichten
19
Hallo,

Ik ben bezig met het maken van een Word sjabloon waarin allerlei besturingselementen staan (keuzevakken en invoervelden).
Een deel van het document wordt met samenvoegen ingevuld vanuit een extern programma. Daarna wil ik dat de overige invoervelden met tabtoets kunnen worden doorlopen en ingevuld / juiste keuze uit keuzelijst gehaald.
Probleem is dat het externe programma alleen de .dot extensie herkent, dus ik moet het beslist opslaan met de .dot extensie (het Word-document wordt geopend vanuit het programma).

Het bestand is grotendeels klaar, maar helaas krijg ik het niet beveiligd. Als ik (in Word 2003) klik op Extra > Beveiligen blijft alles grijs oftewel inactief. Ook het slotje op de werkbalk Formulieren is inactief. In Word 2010 hetzelfde .... (ik had 2003 even ernaast geïnstalleerd in de hoop dat dit de oplossing zou zijn, verwachtende dat het probleem in de "compatibiliteitsmodus" zou zitten).

Iemand een idee?
 
Ik zou zeggen: een voorbeeldje. Een sjabloon is doorgaans prima te beveiligen, dus je hebt ergens iets verkeerd gedaan.
 
Samenvoegen en formulieren werken niet goed samen; om een formulier te kunnen invullen moet het document beveiligd zijn, maar een beveiligd formulier kan niet samenvoegen. Dus je zit in een spagaat waar moeilijk uit te komen is. Je kunt wellicht een omweg overwegen, die de sjabloon in eerste instantie niet beveiligt, zodat je de merge vanuit het externe programma wel kunt maken. Als je het document hebt, staan er geen samenvoegvelden meer in als het goed is, en kan de documentbeveiliging aangezet worden. Dit doe je dan met een macro die gestart wordt bij het openen van het document. Die ziet er dan ongeveer zo uit:

Code:
Private Sub Document_Open()
    If ActiveDocument.ProtectionType = wdNoProtection Then
        ActiveDocument.Protect Type:=wdAllowOnlyFormFields, Password:="wachtwoord", NoReset:=True
    End If
End Sub
Deze macro wordt wèl uitgevoerd in de sjabloon, ook al kun je dat in de sjabloon dus niet doen met de opties. Alleen heeft het dus niet zoveel zin in de sjabloon, omdat die is gekoppeld aan het gegevensbestand en je dat wel moet kunnen samenvoegen. Omdat de sjabloon een nieuw document maakt, wordt de macro netjes meegekopieerd naar het samengevoegde document, en daar wordt hij uitgevoerd bij openen.
 
Dat klinkt dan inderdaad logisch.

Ik ben nog maar een leek op dit gebied en kom er niet helemaal uit.
Als ik bovenstaande zo lees zou dat dus betekenen dat ik wanneer ik het sjabloon open en er een document1 wordt aangemaakt, ik dit document zou moeten kunnen beveiligen toch? Maar ook dat gaat niet. Wat doe ik fout?

En misschien zou je me kunnen helpen hoe de macro dan exact moet worden ingebouwd zodat het bij openen wordt uitgevoerd?
 
Om te beginnen moet je de code in de sjabloon plakken. Als je de sjabloon hebt geopend, druk je op <Alt>+<F11>, en dan plak je daar de code. Die komt dan vanzelf bij de Document sectie van de sjabloon te staan. De werking van een sjabloon is eigenlijk heel simpel: je maakt er een nieuw document mee. Documenten kennen dan (o.a.) twee triggers: Document_New en Document_Open, waar de macro dus een voorbeeld van is. De New variant wordt uitgevoerd als je een nieuw document maakt, maar dat is hier niet bruikbaar, want als het document wordt aangemaakt door het externe programma moet hij juist een samenvoeging uitvoeren, dus mag hij bij het maken van het nieuwe document niet beveiligd zijn. Als de export eenmaal gemaakt is, en opgeslagen (zal het programma wel doen) komt de tweede variant om de hoek kijken. Je hebt nu een nieuw document, en dat kun je dus hooguit openen. En op dat moment wordt de macro getriggerd, en het document dus beveiligd.
 
Laatst bewerkt:
Voorbeeld document obv sjabloon.pngBekijk bijlage Rapport.dot
Hey Michel,

Dank voor je hulp. Helaas gaat er toch nog iets mis. Als ik een nieuw document maak op basis van de sjabloon wordt deze nog niet beveiligd.
Overigens is het rapport wel beveiligd als ik deze open als sjabloon ...
 
Overigens is het rapport wel beveiligd als ik deze open als sjabloon ...
Dat zou ik ook denken! Dat doet de macro namelijk. Je moet de sjabloon ook niet openen, maar je moet een nieuw document maken op basis van de sjabloon, want daar moet je een sjabloon ook voor gebruiken. En ik ga er eigenlijk van uit dat je programma dat op die manier ook doet. Anders heb je een klein probleem...
 
Probleem is dat wanneer ik een document aanmaak op basis van het sjabloon (vanuit het programma, maar ook buiten het programma om) het document niet wordt beveiligd. Daarom had ik het aangepaste sjabloon ook weer even toegevoegd. Of kan het aan instellingen binnen Office liggen?
 
Ik kan niet zo heel veel met de sjabloon, omdat er geen gegevensbestand bij zit. En als ik dan open zonder gegevensbestand en de velden verwijder, dan zit ik met een mismaakt document. Heb je een compleet voorbeeld met een databestandje?
 
Als ik je rapport opent, kan ik het wel beveiligen (Word 2010)
Je moet wel de 2e optie gebruiken om aan te geven wat je wil beveiligen.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan