• 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.

Macro verzend de mail niet

Status
Niet open voor verdere reacties.

Magistro

Gebruiker
Lid geworden
21 aug 2007
Berichten
26
Hallo,

Ik ben al een tijdje aan het kijken hier om dit werkend te krijgen.

Hierdoor heb ik dus ook de site van Ron de Bruin gevonden, met een mooi scriptje en alles. Dit werkt allemaal perfect, hij maakt de verschillende bestanden aan en alles. Alleen maakt hij geen mail aan. Ik ben aan het einde van mijn latijn, ik kan VBA wel enigzins begrijpen, maar het niet echt zelf schrijven.

Hebben meer mensen hier problemen mee gehad? Zoja, hoe is dit dan opgelost?

Het script kan hier worden gevonden, ik heb het precies hetzelfde gemaakt zo.

http://www.rondebruin.nl/mail/folder1/row2.htm

Ik hoop dat er iemand is die me kan helpen.

Greetz,
Magistro
 
Magistro,

Code:
.SendMail Cws.Cells(Rnum, 1).Value, _
"This is the Subject line"
 On Error GoTo 0

Heb je al geprobeerd om met F8 de code te volgen?
Misschien zit het (Rnum, 1).Value hier in.

Ik zie namelijk niet dat hij een gegeven uit B1 pakt.
Zelf ben ik er ook niet zo'n held in maar ga dan wat proberen.

Suc6,
 
Magistro,

Kijk eens hier misschien werkt deze code.
Het is het laatste antwoordt van Roncancio

Suc6
 
Magistro,

Kijk eens hier misschien werkt deze code.
Het is het laatste antwoordt van Roncancio

Suc6

Hallo Hoornvan,

Alvast bedankt voor je hulp.

Dit script is niet wat ik zoek, hij pakt namelijk alleen een adres uit cel L1. Ik heb meerdere adressen waar aparte gegevens heen gestuurd moeten worden, dus is dit geen optie.

Ik had je andere tip met F8 ook meerdere malen al geprobeerd. Hij loopt inderdaad fout bij de .Sendmail Cws.Cells(Rnum, 1).Value. Hij verstuurd de mail gewoon niet, outlook wordt nog geeneens geopend
 
Laatst bewerkt:
Magistro,

Ik had de macro ook geprobeerd met het zelfde resultaat.
Zoveel weet ik er niet van (probeer vaak wat)
Er zijn op dit forum wel mensen die er verstand van hebben.

Suc6,
 
Deze werkt
:thumb:
Sub Mail_workbook_Outlook_2()

Sheets("Blad1").Select
Dim wb1 As Workbook
Dim wb2 As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim FileExtStr As String
Dim OutApp As Object
Dim OutMail As Object

Set wb1 = ActiveWorkbook

If Val(Application.Version) >= 12 Then
If wb1.FileFormat = 51 And wb1.HasVBProject = True Then
MsgBox "There is VBA code in this xlsx file, there will be no VBA code in the file you send." & vbNewLine & _
"Save the file first as xlsm and then try the macro again.", vbInformation
Exit Sub
End If
End If

With Application
.ScreenUpdating = False
.EnableEvents = False
End With

TempFilePath = Environ$("temp") & "\"
TempFileName = wb1.Name & " "
FileExtStr = "." & LCase(Right(wb1.Name, Len(wb1.Name) - InStrRev(wb1.Name, ".", , 1)))

wb1.SaveCopyAs TempFilePath & TempFileName & FileExtStr
Set wb2 = Workbooks.Open(TempFilePath & TempFileName & FileExtStr)

Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)

On Error Resume Next
With OutMail
.From = ""
.To = ""
.CC = ""
.BCC = ""
.Subject = ""
.HTMLBody = ""
.Display
End With
On Error GoTo 0
wb2.Close SaveChanges:=False

Kill TempFilePath & TempFileName & FileExtStr

Set OutMail = Nothing
Set OutApp = Nothing

With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
 
Zoek je dit?
Onderstaande formule zoekt in de A-kolom if er een emailadres in staat.
Vervolgens wordt er per regel een bericht verstuurd.
A-Kolom: het email-adres.
B-Kolom: het onderwerp
C-Kolom: tekst
Code:
Sub Verzenden()
Dim olApp As Outlook.Application
Dim olMail As MailItem
Dim CurrFile As String
Dim lRow As Long
    lRow = 1
    ActiveWorkbook.Save
    CurrFile = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
'    On Error Resume Next
    While Range("A" & lRow).Value <> ""
        If Range("A" & lRow) Like "*@*" Then
            Set olApp = New Outlook.Application
            Set olMail = olApp.CreateItem(olMailItem)
            
            With olMail
                .To = ActiveSheet.Range("A" & lRow).Value
                .Subject = ActiveSheet.Range("B" & lRow).Value
                .Body = ActiveSheet.Range("C" & lRow).Value
                .Display
                .Send
            End With
            
            Set olMail = Nothing
            Set olApp = Nothing
        End If
        lRow = lRow + 1
    Wend
End Sub


Met vriendelijke groet,


Roncancio
 
Roncancio,

Ik heb de code in een module gezet en met een knop verbonden.
Als ik op de knop klikt geef hij direct een fout melding bij de rode regel en wel de volgende.
Een door de gebruiker gedefinieerd gegevens type is niet gedefinieerd.
Code:
Sub Verzenden()
[COLOR="Red"]Dim olApp As Outlook.Application[/COLOR]
Dim olMail As MailItem
Dim CurrFile As String
Dim lRow As Long

Mvg,
 
Roncancio,

Ik heb de code in een module gezet en met een knop verbonden.
Als ik op de knop klikt geef hij direct een fout melding bij de rode regel en wel de volgende.
Een door de gebruiker gedefinieerd gegevens type is niet gedefinieerd.
Code:
Sub Verzenden()
[COLOR="Red"]Dim olApp As Outlook.Application[/COLOR]
Dim olMail As MailItem
Dim CurrFile As String
Dim lRow As Long

Mvg,

Je moet nog een verbinding maken naar de library van Outlook. Hoe?

- Ga naar Extra - Macro - Visual Basic Editor.
- Ga naar Extra - Verwijzingen..
- Zoek in de lijst van "Beschikbare verwijzingen" naar Microsoft Outlook 11.0 Office Library (Kan een andere versie nummer zijn).
- Vink het aan
- Klik op OK.

Met vriendelijke groet,


Roncancio
 
Roncancio,

Je moet nog een verbinding maken naar de library van Outlook.

Bedankt voor de informatie.
De verwijzing Microsoft Outlook 11.0 Office Library kan ik er niet in vinden.
Ik zelf gebruik geen Outlook maar OulookExpress.

Mvg,
Wim
 
Roncancio,



Bedankt voor de informatie.
De verwijzing Microsoft Outlook 11.0 Office Library kan ik er niet in vinden.
Ik zelf gebruik geen Outlook maar OulookExpress.

Mvg,
Wim

Wellicht is deze Engelstalige site interessant voor je.
Hierin staat code om emails te versturen via Outlook Express vanuit Excel.

Met vriendelijke groet,


Roncancio
 
Roncancio,

Bedankt voor de link.

Een beetje laat de reactie maar het werkt.
Ik heb even moeten puzzelen om het adres er in te krijgen.

Nu nog even puzzelen om een deel te selecteren en dat dan te versturen.
Vind ik wel leuk om het uit te proberen, je steekt er altijd wel wat van op.

Mvg,
Wim
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan