E-mail versturen met een enkele record gegevens

Status
Niet open voor verdere reacties.

jelleruben

Gebruiker
Lid geworden
11 nov 2006
Berichten
443
Hallo allemaal,

Wederom ben ik weer een stapje verder met mijn Access project.

Er is iets wat ik nog erin wil hebben. Ik heb op het forum rond gezond, alleen zie door de bomen het bos niet meer, zoveel mogelijkheden en manieren. Ik zou graag een knop willen als ik er op druk dat er een e-mail uit gaat met de gegevens uit de geslecteerde record (huidige record op het formulier) komen. Het e-mail adres zal ten allertijden gelijk blijven.

Weet iemand welke methode het beste is??

Alvast erg bedankt.
 
We deinsen niet terug voor wat taaltips:
Het e-mail adres zal ten allertijden gelijk blijven.
is in werkelijkheid: 'te allen tijde'. Scheelt je weer een paar punten bij het volgende Nationale Dictee :)
Er zijn regelmatig vragen over (+ uiteraard oplossingen) over mailen vanuit een formulier. Je kunt het volgens mij zelfs met een knop met de wizard maken. Dus wat is het probleem? En wat wil je precies mailen?
 
Je kan via de wizzard, een rapport verzenden dat klopt, maar hij maakt meteen voor alle records één mail aan, en ik wil dus dat er de mogelijkheid dat hij alleen een mail stuur bij de huide record, en zou
dus ook graag willen dat de mogelijkheid is dat de record gegevens in de body van de e-mail komen te staan..
 
De code die je maakt met de wizard kun je daarna uiteraard aanpassen. Maar we zijn al iets verder, want we weten nu dat je een rapport hebt dat gemaild gaat worden, en niet gegevens van een formulier. Heb je het rapport gebaseerd op (ongeveer) dezelfde gegevensbron als het formulier?
 
Ja klopt, ik heb nu een Rappot gebaseerd op een Query. Vannacht nog even goed gedacht. En heb het volgende weten te doen. met die rapport, dat is dat men in het formulier de records aankan vinken (met een selectievak. En als men dan op de
mail knop klikt komen alleen de geselecteerde records in. Nu komt er wel steeds een vraag van "Object verzenden als". Is dit ook mogelijk om te omzeilen, en steeds een standaard keuze te houden?
 
Die vraag hoort niet; dan zou ik dus je code moeten zien.
 
De code komt uit de wizzard:


Code:
Private Sub btn_mail_Click()
On Error GoTo Err_btn_mail_Click

    Dim stDocName As String

    stDocName = "qry_rappel_opleiding"
    DoCmd.SendObject acReport, stDocName

Exit_btn_mail_Click:
    Exit Sub

Err_btn_mail_Click:
        MsgBox "Opdracht is geannuleerd"
    Resume Exit_btn_mail_Click
    
End Sub
 
Je DocName lijkt een query te zijn, maar voor hetzelfde geld ben je vergeten het rapport het juiste voorvoegsel te geven, dus dat zou nog kunnen kloppen. Verder mis ik nog een adres in de regel.
Code:
    DoCmd.SendObject acReport, stDocName, , "test@test.nl"
 
Dat was een foutje van mijn, het heb het rapport als qry_rappel_opleiding" genoemd, omdat hij daar op gebasseerd is. heb hem nu hernoemt naar "rap_rappel_opleiding"

Het adres kon ik zelf nergens in vullen, ik wist niet waar ik die kwijt moets zijn.

Ik weet niet of ik het voorbeeld je van jouw kan gebruiken in mijn knop, als ik dat doe. Krijg ik eerst weer "Object verzenden als". Als ik wat kies, gaat hij naar de regel
"Opdracht is geannuleerd"

voert de regel "DoCmd.SendObject acReport, stDocName, , "test@test.nl" niet uit

Heb mijn DoCmd vervangend door die van jouw.
 
De extra opties krijg je te zien als je achter DoCmd.SendObject acReport, stDocName een komma typt. Je ziet dan welke parameters je kunt toevoegen. Bij elke komma schuift de actieve parameter door.
 
Bedankt voor je uitleg, uit eindelijk is het gelukt. Met deze code:

Code:
Private Sub btn_mail_Click()
On Error GoTo Err_btn_mail_Click

    Dim stDocName As String

    stDocName = "rpt_raport"
    'DoCmd.SendObject acReport, stDocName
    DoCmd.SendObject acSendReport, stDocName, acFormatXLS, "emailadres", , , "onderwerp", "Bericht in mail", , False

Exit_btn_mail_Click:
    Exit Sub

Err_btn_mail_Click:
        MsgBox "Opdracht is geannuleerd"
    Resume Exit_btn_mail_Click
    
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan