Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Anders (software)

verzendknop op userform VBA

windowsXP-PRO
9 antwoorden
  • Hoe kan ik een emailadres koppelen aan een verzendknop op een userform welke ik in VBA gemaakt heb?

    Wie weet de oplossing?

    Groetjes;

    Theo

  • Dat kan met DoCmd.SendObject

    Kijk in de help van VBA maar eens bij DoCmd.SendObject. Daar wordt het e.e.a. uitgelegd. Het werkt perfect.

  • Helaas, ik kan deze optie niet terugvinden
    in de help van VBA en kan er dus ook niets mee.
    Weet iemand misschien een andere oplossing?

    ——————

  • Als je Outlook hebt geinstalleerd, kun je met onderstaande code vast wel uit de voeten.

    code:

    Sub CommandButton1_Click()
    Dim obj As Outlook.Application
    Dim itmMail As Outlook.MailItem

    Set obj = CreateObject("Outlook.Application")

    Set itmMail = obj.CreateItem(olMailItem)

    With itmMail
    .To = <email-adres>
    .Subject = <onderwerp van de mail>
    .Body = <de body tekst>
    .Send
    End With

  • quote:
    Originally posted by Eddi3:
    Als je Outlook hebt geinstalleerd, kun je met onderstaande code vast wel uit de voeten.

    code:

    Sub CommandButton1_Click()
    Dim obj As Outlook.Application
    Dim itmMail As Outlook.MailItem

    Set obj = CreateObject("Outlook.Application")

    Set itmMail = obj.CreateItem(olMailItem)

    With itmMail
    .To = <email-adres>
    .Subject = <onderwerp van de mail>
    .Body = <de body tekst>
    .Send
    End With


    Het is wel wat trager, maar ik laat altijd bij het declareren van de outlook variabelen het objecttype weg, dus:

    code:

    Dim obj
    Dim itmMail


    i.p.v.
    code:

    Dim obj As Outlook.Application
    Dim itmMail As Outlook.MailItem


    Hierdoor hoeft je geen verwijzing naar de Outlook-bibliotheek in je applicatie op te nemen én je bent niet meer gebonden aan de versie van Outlook. Dus gemaakt met Outlook 97, werkt het ook in Outlook 97 en hoger.

  • Ondanks al jullie goede bedoelingen kom ik er nog niet uit. Maar nu moet ik ook eerlijk bekken dat ik een absolute beginner ben op het gebied van VBA.

    De code achter de verzendknop die ik gemaakt heb ziet er als volgt uit:

    Private Sub CommandButton1_Click()
    If TextBox1 = "" Then MsgBox "U heeft geen naam ingevuld", vbOKOnly, Error
    If TextBox2 = "" Then MsgBox "U heeft geen telefoonnummer of piepernummer ingevuld", vbOKOnly, Error
    If TextBox3 = "" Then MsgBox "U heeft geen tijd ingevuld", vbOKOnly, Error
    If TextBox4 = "" Then MsgBox "U heeft geen datum ingevuld", vbOKOnly, Error
    If TextBox5 = "" Then MsgBox "U heeft geen gebouw/unit ingevuld", vbOKOnly, Error
    If TextBox6 = "" Then MsgBox "U heeft geen afdeling of ruimte ingevuld", vbOKOnly, Error
    If TextBox8 = "" Then MsgBox "U heeft geen omschrijving van de klacht ingevuld", vbOKOnly, Error
    Selection.GoTo What:=wdGoToBookmark, Name:="naam"
    Selection.TypeText TextBox1
    Selection.GoTo What:=wdGoToBookmark, Name:="telefoon"
    Selection.TypeText TextBox2
    Selection.GoTo What:=wdGoToBookmark, Name:="datum"
    Selection.TypeText TextBox4
    Selection.GoTo What:=wdGoToBookmark, Name:="tijd"
    Selection.TypeText TextBox3
    Selection.GoTo What:=wdGoToBookmark, Name:="gebouw"
    Selection.TypeText TextBox5
    Selection.GoTo What:=wdGoToBookmark, Name:="afdeling"
    Selection.TypeText TextBox6
    Selection.GoTo What:=wdGoToBookmark, Name:="klacht"
    Selection.TypeText TextBox8

    Nu wil ik hier een regel aan toevoegen die het betreffende document verstuurt naar alebeek@raketnet.nl nadat de gebruiker op de verzendknop gedrukt heeft.

    Welke knappe knop weet de oplossing?

    Groetjes;

    Theo

  • Ik zou een while wend lus toepassen, die pas de procedure verlaat als alles is ingevuld. Dan de code van Eddi3 toepassen, zie onderstaande (niet volledige) uitwerking.

    ———
    Private Sub CommandButton1_Click()
    doorgaan=false
    While not doorgaan
    …. (jouw criteria)
    Wend
    if doorgaan=true then
    bodytekst="naam"+chr(9)+":"+textbox1+chr(13)+chr(10)+"telefoonnummer"+chr(9)+chr(13)+chr(10)+": "+textbox2+ enz…….
    call verzenden
    end if
    end sub

    sub verzenden()
    Dim obj As Outlook.Application
    Dim itmMail As Outlook.MailItem
    Set obj = CreateObject("Outlook.Application")
    Set itmMail = obj.CreateItem olMailItem)
    With itmMail
    .To = "alebeek@raketnet.nl"
    .Subject = "klacht van "+textbox1
    .Body = bodytekst
    .Send
    End With
    end sub
    ———————
    textbox1 en bodytekst moeten wel als Public zijn gedeclareerd.
    chr(9) is de tab
    chr(13)+chr(10) betekent naar het begin van een nieuwe regel.

    Succes.

  • Sorry heren;
    Ik neem aan dat jullie allemaal goede bedoelingen hebben, maar ik kom er niet uit. Mijn laatste hoop is:
    Kan iemand een werkend voorbeeld naar mij mailen? Ik denk dat ik er dan uit moet kunnen komen.
    Alvast heel erg bedankt.
    Mailen kan naar: alebeek@raketnet.nl
  • Sorry heren;
    Ik neem aan dat jullie allemaal goede bedoelingen hebben, maar ik kom er niet uit. Mijn laatste hoop is:
    Kan iemand een werkend voorbeeld naar mij mailen? Ik denk dat ik er dan uit moet kunnen komen.
    Alvast heel erg bedankt.
    Mailen kan naar: alebeek@raketnet.nl

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.