macro in een rtf bestand

Status
Niet open voor verdere reacties.

Kollie98

Gebruiker
Lid geworden
8 nov 2004
Berichten
19
Goedemorgen,

Ik zal maar meteen met de deur in huisvallen. Ik heb een RTF bestand en ik wil hierin iets bouwen, dat wanneer men bv. ergens op drukt:
het bestand wordt gewoon opgeslagen,
daarna het bestand op een bepaalde locatie wordt opgeslagen met een bepaalde naam en de datum van die dag en
dat daarna de mail opent en het gemaakte bestand dan wordt toegevoegd als bijlage.

Dit heb ik in excel bijna voor elkaar gekregen met visual basic(bijlage moet alleen hadmatig toegevoegd worden). Ik wil dit nu echter voor een RTF bestand voor elkaar zien te krijgen. Echter in een rtf bestand werkt de visual basic code niet.
Iemand suggesties?:rolleyes:

groetjes
erik
 
rtf

Dat kan net niet. Het moet een rtf bestand zijn. De applicatie werkt alleen met rtf.
 
hm raar

Wanneer ik het bestand opsla als rtf(via opslaan als, en dan type rtf). Komt er een melding dat wanneer ik het bestand opsla als rtf alle macro's verloren gaan. Ik ben dan mijn visualvasic code kwijt. Dit gebeurd hier zowel in word2000 als word2003.

Ik heb het nu opgelost dmv van een werkbalk in normal.dot :D

groetjes
erik
 
Ik vroeg me af hoe je dat gedaan hebt want ik zit met hetzelfde probleen en kom er ook met die oplossing nog niet echt uit....
 
Een rtf bestand kan geen VBA-code bevatten.
Je kunt wel in een bestand van een programma (bijv. Excel, Word, Outlook, Access, Powerpoint) van de office-familie VBA opdrachten op een RTF-bestand laten uitvoeren.
 
Oke en hoe zou je dat dan kunnen doen?
Ik zou graag willen dat een rtf bestand zichzelf automatisch opslaat in Word als hij wordt afgesloten. Deze VBA-code heb ik al gemaakt maar waar moet ik hem dan neerzetten zodat hij deze opdracht alleen op een rtf bestand uitvoert?
 
Zet in een macromodule van normal.dot de volgende macro

Code:
Sub tst()
  ActiveDocument.SaveAs "E:\test.rtf", wdFormatRTF
End Sub
 
Dat had ik al geprobeerd maar dan probeert hij elk Word bestand dat ik afsluit op te slaan... Of zet ik de macromodule dan toch echt verkeerd?
 
Dat doe je inderdaad
Mijn macro heet 'tst' en wordt alleen maar uitgevoerd als je daartoe opdracht geeft.
 
Oke ja klopt, ik gebruik een sub Autoclose() want zou het liefste hebben dat als een rtf bestand wordt afgesloten hij zichzelf automatisch zou opslaan.
Maar dat is dus niet automatisch mogelijk dan, alleen als je hiervoor een opdracht geeft? Want bij een rtf bestand moet de VBA-code in normal.dot staan om hem uit te kunnen voeren.... toch?
 
Het kan in Autoclose, maar dan moet je wel testen op het formattype

Code:
Sub Autoclose()
  With activedocument
    if .saveformat=6 then .SaveAs "E:\test.rtf", 6
  End With
End Sub
 
Ja dat is inderdaad de oplossing :D Had daar nog niet aan gedacht. Bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan