Met VBA Excel een mail maken en opslaan in een zelfgemaakte "draftsmap"

Status
Niet open voor verdere reacties.

Jappa S

Gebruiker
Lid geworden
3 jul 2008
Berichten
12
Hallo allemaal!

ik heb een vraagje. Sinds kort zijn we op het werk over van Lotus Notes naar Outlook 2003.
We hadden verschillende applicaties in het office pakket gemaakt die via Lotus Notes mails versturen. Dat moeten we nu via Outlook maken.

Probleem is de bekende beveiliginswaarschuwing. Dit wil ik omzeilen door de aangemaakte berichten op te slaan in Drafts. Maar dan wel in een submap binnen Drafts die ik tijdens het testen maar even "Verzenden" heb genoemd.

Vervolgens wil ik met een macrootje binnen outlook alle mail in de map "Verzenden" versturen.

Het probleem nu is het volgende, het lijkt mij alleen maar om een mail op te slaan in Drafts en niet in de submap. Kan iemand mij hiermee helpen?
Ik gebruik de volgende code om de mail in drafts te zetten, heb al van alles uitgeprobeerd, zal ik verder niet posten want werkte toch niet... :confused:
Alvast bedankt!

Code:
Dim OutApp As Object
    Dim OutMail As Object
    Dim objFolder As MAPIFolder

With OutMail

        .To = "Mijnmail@domein.nl"
        .Subject = "Dit is een test mail!"
        .body = "TEST"

        .Save 
    End With
     
    Set OutMail = Nothing
    Set OutApp = Nothing
 
Misschien is de functie Outmail.Move wat voor je?

Je kunt op deze manier zelfs een variabele folder opgeven:
Set destFldr = outApp.GetNamespace("MAPI").Folders.Item("Mailbox - " & Cells(1, 10)).Folders(MoveFldr)

Aan de andere kant ben ik wel benieuwd hoe je met Lotus Notes hebt gewerkt, want tot nog toe ging ik er van uit dat je Notes niet vanuit Office kon aansturen.

Zou je mij daar eens wat over willen mailen:
japiep@gmail.com
 
.move werkt inderdaad.
De volledige oplossing is nu als volgt:

Code:
Sub MailOpslaan()

On Error GoTo errorHandler

    
    Dim OutMail As Object
    Dim objFolder As MAPIFolder
        
    Set myOlApp = CreateObject("Outlook.Application")
    myOlApp.Session.Logon
    Set OutMail = myOlApp.CreateItem(0)
    Set myNameSpace = myOlApp.GetNamespace("MAPI")
    Set myFolder = _
        myNameSpace.GetDefaultFolder(olFolderDrafts)
    Set myNewFolder = myFolder.Folders("Verzenden")
    
    On Error Resume Next
    With OutMail
        .To = "Mijnmail@domein.nl"
        .Subject = "Dit is een test mail 14"
        .body = "TEST"
       .Move myNewFolder
    End With
     
    Set OutMail = Nothing
    
    
Exit Sub
errorHandler:
    MsgBox "Er is een fout opgetreden:" & vbCr & Err.Number & ": " & Err.Description

End Sub

Dankjewel! ik zal eens kijken wat ik van notes heb om je te mailen. Het meeste komt gewoon van internet. Moet ook wel want je hebt geen intellisense dus is moeilijk om zelf aan te prutsen!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan