.rtf verzenden per email (datum aut. aanpassen)

Status
Niet open voor verdere reacties.

cyblix

Gebruiker
Lid geworden
15 apr 2004
Berichten
42
hallo, een vraag. Ik verzend iedere dag een paar dienstrapportages via een access database. Nu verzend hij deze als .rtf uitvoer. Is het mogelijk om in de bestandsnaam van het .rtf bestand automatisch de datum op te laten nemen, dus bijvoorbeeld:

dienstrapport 12-03-2004.rtf

belangrijk is dat het de datum is die in het rapport staat en niet de verzenddatum want soms wordt het rapport een dag te laat verzonden. Bij voorbaad dank voor jullie hulp. p.s. is het ook mogelijk ook het onderwerp van de email automatisch op deze manier aan te laten passen. ik ben beginnend... dus niet veel verstand van vba etc. bij voorbaad dank voor jullie hulp...
 
Hoe wordt het RTF bestand nu gemaakt? Doet een stukje code of een macro dat of iets anders?


Grtz,
 
Geplaatst door beheer25
Hoe wordt het RTF bestand nu gemaakt? Doet een stukje code of een macro dat of iets anders?


Grtz,

het wordt nu met een macro verzonden per email met als uitvoerformaat .rtf
 
Dan staat waarschijnlijk de bestandsnaam letterlijk in die macro. Als je de macro converteert naar VBA dan zie je de bestandsnaam daarin ook weer terugkomen.

Omdat de bestandsnaam gewoon een string is kun je daar gewoon een datum achteraan plakken. Nu moet je alleen ergens in een variabele of op een formulierveldje nog die datum hebben en je hebt het voor elkaar.

De opbouw van de bestandsnaam zal dan zoiets worden als: "dienstrapport " & me.txbdatum
Zonder VBA lukt dit niet.


Grtz,
 
Geplaatst door beheer25
Dan staat waarschijnlijk de bestandsnaam letterlijk in die macro. Als je de macro converteert naar VBA dan zie je de bestandsnaam daarin ook weer terugkomen.

Omdat de bestandsnaam gewoon een string is kun je daar gewoon een datum achteraan plakken. Nu moet je alleen ergens in een variabele of op een formulierveldje nog die datum hebben en je hebt het voor elkaar.

De opbouw van de bestandsnaam zal dan zoiets worden als: "dienstrapport " & me.txbdatum
Zonder VBA lukt dit niet.


Grtz,

ik heb dus helemaal geen verstand van vba... das erg lastig... kzou niet weten hoe ik de code moet schrijven....
 
Dan wordt het knap lastig. Zonder VBA kan dat wat je wil niet. Plaats anders de macro geconverteerd naar VBA (via menuoptie) even op dit forum, mischien dat het makkelijk aan te passen is.


Grtz,
 
ok hieronder is de macro in vba. het was even zoeken maar ik heb hem om kunnen zetten...


Option Compare Database

'------------------------------------------------------------
' verzenden___rapport_200_Weena
'
'------------------------------------------------------------
Function verzenden___rapport_200_Weena()
On Error GoTo verzenden___rapport_200_Weena_Err

DoCmd.SendObject acReport, "rapport - 200 weena", "RichTextFormat(*.rtf)", "emailadres1@test.nl", "", "emailadres2@test.nl", "Rapport 200 Weena (.rtf versie)", "", False, ""


verzenden___rapport_200_Weena_Exit:
Exit Function

verzenden___rapport_200_Weena_Err:
MsgBox Error$
Resume verzenden___rapport_200_Weena_Exit

End Function


nu is: Rapport 200 Weena (.rtf versie) het huidige onderwerp. dit moet worden: Dienstrapport 200 Weena DATUM. waarbij datum natuurlijk vwervangen dient te worden door de datum die in het .rtf document komt te staan.
 
Geplaatst door cyblix

Option Compare Database

'------------------------------------------------------------
' verzenden___rapport_200_Weena
'
'------------------------------------------------------------
Function verzenden___rapport_200_Weena()
On Error GoTo verzenden___rapport_200_Weena_Err

DoCmd.SendObject acReport, "rapport - 200 weena", "RichTextFormat(*.rtf)", "emailadres1@test.nl", "", "emailadres2@test.nl", "Rapport 200 Weena (.rtf versie)", "", False, ""


verzenden___rapport_200_Weena_Exit:
Exit Function

verzenden___rapport_200_Weena_Err:
MsgBox Error$
Resume verzenden___rapport_200_Weena_Exit

End Function



kan je hier nu iets mee?
 
Ik heb de code even wat uitgebreid. Hier de aangepaste versie:

Code:
Function verzenden___rapport_200_Weena()

On Error GoTo verzenden___rapport_200_Weena_Err

Dim Datum As String

Datum = InputBox("Geef de datum van het rapport op:", "Datum")
DoCmd.SendObject acReport, "rapport - 200 weena", "RichTextFormat(*.rtf)", "emailadres1@test.nl", "", "emailadres2@test.nl", "Dienstrapport 200 Weena " & Datum, "Hierbij het rapport van " & Datum, False, ""


verzenden___rapport_200_Weena_Exit:
Exit Function

verzenden___rapport_200_Weena_Err:
MsgBox Error$
Resume verzenden___rapport_200_Weena_Exit

End Function

En dan nog een beetje uitleg:
1. Als je de code aanroept zal er een vraag verschijnen om de rapportdatum op te geven. Dit kan natuurlijk ook een veld zijn dat je al ergens eerder hebt gebruikt. Bijvoorbeeld een veld op een formulier.
2. Als je de macro test en je vult je eigen emailadres in zul je zien dat de tekst die je invoert in de invoerbox ook terugkomt in het subject en de body van het mailtje.
3. emailadres2@test.nl wordt nu als BCC veld verstuurd, ik neem aan dat je dat bewust hebt gedaan?

Suc6,
 
Geplaatst door beheer25
Ik heb de code even wat uitgebreid. Hier de aangepaste versie:

Code:
Function verzenden___rapport_200_Weena()

On Error GoTo verzenden___rapport_200_Weena_Err

Dim Datum As String

Datum = InputBox("Geef de datum van het rapport op:", "Datum")
DoCmd.SendObject acReport, "rapport - 200 weena", "RichTextFormat(*.rtf)", "emailadres1@test.nl", "", "emailadres2@test.nl", "Dienstrapport 200 Weena " & Datum, "Hierbij het rapport van " & Datum, False, ""


verzenden___rapport_200_Weena_Exit:
Exit Function

verzenden___rapport_200_Weena_Err:
MsgBox Error$
Resume verzenden___rapport_200_Weena_Exit

End Function

En dan nog een beetje uitleg:
1. Als je de code aanroept zal er een vraag verschijnen om de rapportdatum op te geven. Dit kan natuurlijk ook een veld zijn dat je al ergens eerder hebt gebruikt. Bijvoorbeeld een veld op een formulier.
2. Als je de macro test en je vult je eigen emailadres in zul je zien dat de tekst die je invoert in de invoerbox ook terugkomt in het subject en de body van het mailtje.
3. emailadres2@test.nl wordt nu als BCC veld verstuurd, ik neem aan dat je dat bewust hebt gedaan?

Suc6,

ik ga hem zo snel mogelijk proberen. hoe moet ik deze code nu in de database zetten? want ik weet niet hoe ik modules moet starten???
 
Je kunt de geplaatste code gewoon met copy en paste op de plaats van je huidige code zetten. Die staat waarschijnlijk in module1.

Om te testen ga je ergens in de module staan en druk je op het "Play" icoontje.


Suc6,
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan