email verzenden

Status
Niet open voor verdere reacties.

ManuelBeauson

Gebruiker
Lid geworden
11 dec 2014
Berichten
146
Graag had ik via een knop een email willen verzenden naar het email adres dat in het formulier is opgenomen. Heb al veel macro's proberen te maken maar het lukt me niet.
 
Mailen vanuit een formulier is een veel voorkomende vraag; ik zou eens zoeken in het Access forum, want de oplossing komt dus ook regelmatig terug.
 
bedoel je zo iets

Code:
Dim oOutlook As Outlook.Application
Dim oEmailItem As MailItem

Set oOutlook = GetObject(, "Outlook.application")
If oOutlook Is Nothing Then
Set oOutlook = New Outlook.Application
End If
Set oEmailItem = oOutlook.CreateItem(olMailItem)
With oEmailItem
.To = [E_Mail]
.CC = ""
.Subject = "hier komt het onderwerp"
.Body = "hier komt de tekst"
.BodyFormat = olFormatHTML
.Display
End With
Set oEmailItem = Nothing
Set oOutlook = Nothing
 
Ik had dit gevonden op het forum

DoCmd.SendObject , , , strRecipient, , , strSubject, varBody, True
DoCmd.SendObject , , , Me.Aan, , "", Me.Onderwerp, Me.Bodytekst, True, ""

Alleen weet ik niet , maak ik een knop aan in de koptekst met deze code erachter of dien ik anders tewerk te gaan.
 
als je de velden
Aan
Onderwerp
Bodytekst in je formulier hebt staan dan lukt het hier ook mee idd


een knop maken en de code in de bij klikken gebeurtenis zetten
(en dat geld voor de bovenstaande code ook deze maakt gebruik van outlook
je moet dan wel de .To = aanpassen naar je eigen email veld)
Code:
Private Sub Knop40_Click()
On Error GoTo My_ErrorHandler:

DoCmd.SendObject , , , Me.Aan, , "", Me.Onderwerp, Me.Bodytekst, True, ""

exit_My_ErrorHandler:

Exit Sub
My_ErrorHandler:
    MsgBox "Error # :" & Err.Number & ", " & Err.Description, vbExclamation
    Resume Next

End Sub
 
Laatst bewerkt:
Er zijn 2 methodes om mail te versturen: methode 1 gebruikt de standaard email-client die je hebt ingericht. Daar stuur je mails naar toe met SendObject, zoals je zelf hebt gevonden. Deze methode is nauwelijks flexibel te maken. De tweede methode is veel flexibeler, en gebruikt Outlook als email-client. Om die te gebruiken moet je een Outlook sessie openen. De code daarvoor kun je heel makkelijk scoren in dit forum (SendObject trouwens ook) en vind je ook terug in het voorbeeldje van Rene.
Elke code, maakt niet uit wat, moet je ergens mee starten, en dat kan dus een knop zijn. Waar je die knop zet mag je helemaal zelf weten :).
 
ik heb deze code nu ingevuld maar krijg steeds een foutmelding waarbij de eerste zin Private Sub knop23_ Click() in het geel verschijnt. Kan er ook een woordje uitleg bij deze code worden gegeven zoende ik begrijp wat er geschreven staat , voor mij is deze code chinees , ook de opbouw van de code begrijp ik niet. Eens ik het beter begrijp is het makkelijker om zelf een code op te stellen

Code:
Private Sub Knop23_Click()
On Error GoTo My_ErrorHandler:

DoCmd.SendObject , , , Me.Email, , "", Me.Onderwerp, Me.Bodytekst, True, ""

exit_My_ErrorHandler:

Exit Sub
My_ErrorHandler:
    MsgBox "Error # :" & Err.Number & ", " & Err.Description, vbExclamation
    Resume Next
 
Laatst bewerkt door een moderator:
Het is me gelukt met deze code

Code:
Private Sub Knop23_Click()
On Error GoTo My_ErrorHandler:

DoCmd.SendObject , , , Me.Email, , "", True, ""

exit_My_ErrorHandler:

Exit Sub
My_ErrorHandler:
    MsgBox "Error # :" & Err.Number & ", " & Err.Description, vbExclamation
    Resume Next

End Sub
Alleen heb ik nu twee maal het mail adres bij de verzender staan . info@inside-creations.be#mailto:info@inside-creations.be# , hoe krijg ik het gedeelte achter # weg
 
Laatst bewerkt door een moderator:
Dan gebruik je zeker een hyperlink veld voor je email adres? Niet doen; gewoon tekstvelden gebruiken. Je moet dan de inhoud nog wel aanpassen, maar dat kan je met een bijwerkquery wel oplossen.
 
Het werkt, weeral bedankt. In het vak onderwerp komt wel steeds -1 (min één ) te staan , hoe kom dit.
 
Ik weet niet wat je in het veld [Onderwerp] hebt staan, al vermoed ik dat je daar een formule gebruikt. En dat die nu als uitkomst Waar oplevert, zijnde het getal -1.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan