• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Mail met gekozen account

Status
Niet open voor verdere reacties.

GerbenDenker

Gebruiker
Lid geworden
29 mrt 2013
Berichten
74
Hallo,

Wat is er mis met deze code ?
Code:
Sub Mail_small_Text_Change_Account()
'

'Only working in Office 2007-2013
'Don't forget to set a reference to Outlook in the VBA editor

    Dim OutApp As Outlook.Application
    Dim OutMail As Outlook.MailItem
    Dim strbody As String

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(olMailItem)

    strbody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2" & vbNewLine & _
              "This is line 3" & vbNewLine & _
              "This is line 4"

    On Error Resume Next
    With OutMail
        .To = "janenz@hotmail.com"
        .CC = ""
        .BCC = ""
        .Subject = "This is the Subject line"
        .Body = strbody

        'SendUsingAccount is new in Office 2007
        'Change Item(1)to the account number that you want to use
        .SendUsingAccount = OutApp.Session.Accounts.Item(5)

        .Display  'or use .Display
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

Waarom verschijnt de melding: Compileerfout: Een door de gebruiker gedefinieerd gegevenstype is niet gedefinieerd.

Kan iemand de code aanpassen, zodat het werkt ?
Code is zo gekopieerd van http://www.rondebruin.nl/win/s1/outlook/account.htm en geplakt, maar ergens ontstaat er bij mij een fout....
 
Kijk eens naar de eerste commentaarregels:
'Only working in Office 2007-2013
'Don't forget to set a reference to Outlook in the VBA editor

Heb je die reference wel gezet? Anders krijg je inderdaad die foutmelding bij het maken van het Outlook object.
 
Ik gebruik Office 2010, dan kan dat toch werken ?
Maar wat bedoel je met "heb je die referentie wel gezet...".
Zoveel kennis heb ik, kan jij dat uitleggen c.q. In de code zetten?
 
Laatst bewerkt:
Dat doe je niet in de code maar in de VBA Editor (VBE). Als je in de VBA editor bent klik je in het menu op Extra en dan Verwijzingen. Vervolgens zoek je in de lijst Microsoft Outlook 14.0 Object Library op, die vink je dan aan en klik je op Ok.
 
Laatst bewerkt:
Zonder verwijzing.
Code:
Sub Mail_small_Text_Change_Account()
    Dim strbody As String
    With CreateObject("Outlook.Application").CreateItem(0)
        strbody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2" & vbNewLine & _
              "This is line 3" & vbNewLine & _
              "This is line 4"
        On Error Resume Next
        .To = "janenz@hotmail.com"
        .CC = ""
        .BCC = ""
        .Subject = "This is the Subject line"
        .Body = strbody
        'SendUsingAccount is new in Office 2007
        'Change Item(1)to the account number that you want to use
        .SendUsingAccount = .Session.Accounts.Item(5)
        .Display  'or use .Send
    End With
    On Error GoTo 0
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan