Met VBA mail versturen via Groupwise

Status
Niet open voor verdere reacties.

rebirth

Gebruiker
Lid geworden
17 jun 2008
Berichten
170
Hallo,

Ik heb een formulier in Access, waar ik via een knop automatisch een mail wil laten versturen via Groupwise. Deze mail bevat een paar attachments en 2 vaste emailadressen. Het eerste probleem is nu vooral dat het niet wil werken :confused:
Aan de knop is volgende code verbonden:

Code:
Private Sub Knop2_Click()
   ReDim TestEmails(1) As String

    TestEmails(1) = "*******@telenet.be"

    ReDim TestAttachments(1) As String

    TestAttachments(1) = "C:\log.txt"

    Dim TestSubject As String
    TestSubject = "Opvolging vandaag"

    Dim TestBody As String
    TestBody = "In bijlage de opvolging van vandaag."

    Call Groupwise_Mail(TestEmails(), TestAttachments(), TestSubject, TestBody)

End Sub

De Groupwise_Mail code ziet er als volgt uit:

Code:
Function Groupwise_Mail(ByRef myRecipients() As String, ByRef myAttachments() As String, ByVal mySubject As String, ByVal myBodytext As String)
    ' Declare the objects
    Dim objGroupWise As Object
    Dim objAccount As Object
    Dim objMessages As Object
    Dim objMessage As Object
    Dim objMailBox As Object
    Dim objRecipients As Object
    Dim objRecipient As Object
    Dim Recipient As Variant
    Dim objAttachment As Object
    Dim objAttachments As Object
    Dim Attachment As Variant
    Dim objMessageSent As Variant

    On Error GoTo Errorhandling

    ' Now build the GroupWise message object
    Set objGroupWise = CreateObject("NovellGroupWareSession")
    Set objAccount = objGroupWise.Login
    Set objMailBox = objAccount.MailBox
    Set objMessages = objMailBox.Messages
    Set objMessage = objMessages.Add("GW.MESSAGE.MAIL", "Draft")

    ' Add each of the Recipients
    Set objRecipients = objMessage.Recipients
    For Each Recipient In myRecipients
        Set objRecipient = objRecipients.Add(Recipient)
    Next Recipient

    ' Add each of the attachments
    Set objAttachments = objMessage.Attachments
    For Each Attachment In myAttachments
        Set objAttachment = objAttachments.Add(Attachment)
    Next Attachment

    ' Add the Subject/Body Text
    With objMessage
        .Subject = mySubject
        .Bodytext = myBodytext
    End With

    ' Send it
    Set objMessageSent = objMessage.Send

ExitHere:
    Set objGroupWise = Nothing
    Set objAccount = Nothing
    Set objMailBox = Nothing
    Set objMessages = Nothing
    Set objMessage = Nothing
    Set objRecipients = Nothing
    Set objAttachments = Nothing
    Set objRecipient = Nothing
    Set objAttachment = Nothing
    Exit Function

Errorhandling:
    MsgBox Err.Description & " " & Err.Number
    Resume ExitHere

End Function

Bij het uitvoeren ervan krijg ik de melding die je in bijlage ziet.

Eerlijkheidshalve wil ik er wel bij vermelden dat ik bijlange geen expert ben in VBA, en dat dit een code is die ik ergens tegengekomen ben op het www, welke ik graag zou aanpassen om het aan onze noden te laten voldoen. Kan iemand me vertellen hoe ik dit aan het werk kan krijgen?
 

Bijlagen

kwisnie dat een email versturen zo ingewikkeld kon zijn.
Deze code doet hetzelfde als de jouwe

Code:
Private Sub Knop2_Click()
  With CreateObject("NovellGroupWareSession").Login.MailBox.Messages.Add("GW.MESSAGE.MAIL", "Draft")
    .Recipients =split("*******@telenet.be")
    .Attachments.Add "C:\log.txt"
    .Subject = "Opvolging vandaag"
    .Bodytext = "In bijlage de opvolging van vandaag."
    .Send
  End with
End Sub
 
Die is inderdaad een heel stuk korter. Ik wist niet dat het zo kort kon :o
Alleen geeft hij een fout bij de volgende lijn:
.Recipients =split("*******@telenet.be")

Een aanvullend vraagje er al direct bij, kan ik hiermee ook meerdere attachments toevoegen, en hoe doe ik dat?
 
Code:
Private Sub Knop2_Click()
  With CreateObject("NovellGroupWareSession").Login.MailBox.Messages.Add("GW.MESSAGE.MAIL", "Draft")
    .Recipients.Add "*******@telenet.be"
    .Attachments.Add "C:\log.txt"
    .Attachments.Add "C:\log2.txt"
    .Subject = "Opvolging vandaag"
    .Bodytext = "In bijlage de opvolging van vandaag."
    .Send
  End with
End Sub
 
Fantastisch, dat werkt!
Hartelijk dank voor je hulp snb! :thumb:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan