Toon posts:

[Word] Macro laden bij opstarten

Pagina: 1
Acties:
  • 366 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
In een Word sjabloon heb ik een macro gemaakt die eerst om een recordnummer vraagt, vervolgens een mailmerge, maakt met een Access database, op basis van dit recordnummer. Het geheel werkt naar behoren. Nu wil ik echter de macro automatisch laten starten bij het openen van het sjabloon dit blijkt iets lastiger. Normaliter gebeurd dit door een macro AutoExec() dit blijkt echter niet te werken. Het sjabloon word bij gewoon openen altijd omgezet naar een document. Wie kan mij helpen? :?

  • StevenK
  • Registratie: Februari 2001
  • Laatst online: 17:19
Verwijderd schreef op vrijdag 14 oktober 2005 @ 15:13:
In een Word sjabloon heb ik een macro gemaakt die eerst om een recordnummer vraagt, vervolgens een mailmerge, maakt met een Access database, op basis van dit recordnummer. Het geheel werkt naar behoren. Nu wil ik echter de macro automatisch laten starten bij het openen van het sjabloon dit blijkt iets lastiger. Normaliter gebeurd dit door een macro AutoExec() dit blijkt echter niet te werken. Het sjabloon word bij gewoon openen altijd omgezet naar een document. Wie kan mij helpen? :?
Die code start je toch vanuit je normal.dot (via een leuk menuutje ofzo)

Was advocaat maar vindt het juridische nog steeds leuk. Doet tegenwoordig iets in de metaal.


  • Spotmatic
  • Registratie: Februari 2003
  • Nu online

Spotmatic

Ken sent me

Dat klinkt alsof je het bestand opent via de Windows Verkenner en niet via Word: Bestand > Openen?

Trotse Volkswagen T1 en T3 bezitter


  • YellowCube
  • Registratie: December 2001
  • Laatst online: 14:45

YellowCube

Wait...what?

je kunt het met een schakeloptie oplossen (startup switch)
Plaat het sjabloon met de macro in je opstartdirectory van Word.
Vervolgens maak je een snelkoppeling aan waarmee je word op deze manier start:
C:\Etc\Word.exe /mmacronaam

My doctor says that I have a malformed public-duty gland and a natural deficiency in moral fibre and that I am therefore excused from saving the world


Verwijderd

Topicstarter
StevenK: De code heb ik in dit nieuwe sjabloon geplaatst dus niet in normal.dot. Menuutje zou leuk zijn ja maar ik heb hier enkel een standaard office pakket en ik weet niet of dat daar in kan.

Spotmatic: Het bestand open ik inderdaad via de verkenner maar dat zullen de gebruikers ook vaak doen.

YellowCube: Kan ook maar vind ik opzich niet de mooiste oplossing.

  • Spotmatic
  • Registratie: Februari 2003
  • Nu online

Spotmatic

Ken sent me

Ik lees net dat AutoExec() macro's alleen werken wanneer ze zijn toegevoegd aan NORMAL.DOT of in een algemene invoegtoepassing. In jouw geval zou ik AutoOpen() gebruiken, de macro wordt dan gestart op het moment dat het document geopend wordt. AutoClose() wordt uitgevoerd wanneer het document afgesloten wordt.

Trotse Volkswagen T1 en T3 bezitter


Verwijderd

Topicstarter
Spotmatic schreef op vrijdag 14 oktober 2005 @ 15:28:
Ik lees net dat AutoExec() macro's alleen werken wanneer ze zijn toegevoegd aan NORMAL.DOT of in een algemene invoegtoepassing. In jouw geval zou ik AutoOpen() gebruiken, de macro wordt dan gestart op het moment dat het document geopend wordt. AutoClose() wordt uitgevoerd wanneer het document afgesloten wordt.
Thankx met AutoOpen() kom ik alweer een stuk verder.

  • StevenK
  • Registratie: Februari 2001
  • Laatst online: 17:19
Verwijderd schreef op vrijdag 14 oktober 2005 @ 15:22:
StevenK: De code heb ik in dit nieuwe sjabloon geplaatst dus niet in normal.dot. Menuutje zou leuk zijn ja maar ik heb hier enkel een standaard office pakket en ik weet niet of dat daar in kan.
Ja, dat kan.

Zo doet de rest van de wereld dat ook :)

Was advocaat maar vindt het juridische nog steeds leuk. Doet tegenwoordig iets in de metaal.


Verwijderd

Topicstarter
StevenK schreef op vrijdag 14 oktober 2005 @ 16:02:
[...]

Ja, dat kan.

Zo doet de rest van de wereld dat ook :)
Iets meer informatie zou fijn zijn. Ik zou zo namelijk niet weten hoe ik dit moet doen.

  • StevenK
  • Registratie: Februari 2001
  • Laatst online: 17:19
Verwijderd schreef op vrijdag 14 oktober 2005 @ 16:13:
[...]


Iets meer informatie zou fijn zijn. Ik zou zo namelijk niet weten hoe ik dit moet doen.
Je maakt een sub of function aan in je normal dot die het template opent en ermee doet wat 'ie moet doen.

En dan maak je een knopje in één of andere knoppenbalk aan die naar *die* sub of function wijst.

En dan zorg je dat al je gebruikers *die* normal.dot gebruiken.

[ Voor 9% gewijzigd door StevenK op 14-10-2005 16:40 ]

Was advocaat maar vindt het juridische nog steeds leuk. Doet tegenwoordig iets in de metaal.


Verwijderd

de gebruikelijke weg is een nieuw document gebaseerd op een eigen sjabloon te starten door op het sjabloon te dubbelklikken. de code in de procedure autonew in een gewone module of het document_new event in de thisdocument-klasse (meer gebruikelijk) zal dan uitgevoerd worden.
je kan natuurlijk een menuutje in normal.dot aanmaken dat een routine documents.add "c:\sjablonen\mijnsjabloon.dot" aanroept.

  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

StevenK schreef op vrijdag 14 oktober 2005 @ 16:39:
[...]

[...]

En dan zorg je dat al je gebruikers *die* normal.dot gebruiken.
Het afdwingen van een gemeenschappelijk normal.dot is niet meer de aanbevolen praktijk, simpelweg omdat normal.dot ook de opslagplaats is voor de gebruiker aangepaste sneltoetsen en knopjes. Extra menu's worden bvk toegevoegd via add-in of werkgroepsjablonen.

Verder wat heretic schrijft: de aanbevolen manier is om in het Document_new() event van het sjabloon de code te plaatsen die uitgevoerd moet worden bij het maken van een document op basis van het document.
Die autoXXX macro's stammen nog van Word6, als ik me niet vergis.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Verwijderd

Topicstarter
Document_new() geeft mij uit eindelijk de beste oplossing. Het document waar ik de code inzet laat ik namelijk automatisch sluiten het geheel werkt nu perfect zonder gebruik te maken van een sjabloon. Hartelijk dank voor alle reactie's. _/-\o_
Pagina: 1