Mail verzenden via een range

Status
Niet open voor verdere reacties.

Gerwinvdb

Gebruiker
Lid geworden
26 mrt 2012
Berichten
23
Beste,

Via een range in excel wil ik per mailadres (kolom B) een standaardmail verzenden. Per mail moet dan een nr (kolom A) toegevoegd worden aan het onderwerp.

Verder zijn het onderwerp en de tekst van de mail voor iedereen gelijk.

Ik heb op dit moment de volgende code:

Dim OutApp As Object
Dim OutMail As Object
Dim cell As Range

Application.ScreenUpdating = False
Set OutApp = CreateObject("Outlook.Application")

On Error GoTo cleanup
For Each cell In Columns("A").Cells.SpecialCells(xlCellTypeConstants)
If cell.Value Like "?*@?*.?*" And _
LCase(Cells(cell.Row, "C").Value) = "yes" Then

Set OutMail = OutApp.CreateItem(0)
On Error Resume Next
With OutMail
.To = cell.Value
.Subject = "Opschonen contactpersonen artikeldata" & Cells(cell.Row, "A").Value_
.Body = "Beste collega, Hierbij een test mail. Groet, Gerwin en Michael " & Cells(cell.Row, "A").Value _
& vbNewLine & vbNewLine
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
End If
Next cell

cleanup:
Set OutApp = Nothing
Application.ScreenUpdating = True
End Sub


Kan iemand mij hiermee verder helpen.

Alvast bedankt.

Groet,
Gerwin
 
Haal de underscore weg aan het einde.
Code:
.Subject = "Opschonen contactpersonen artikeldata" & Cells(cell.Row, "A").Value_

Of:
Code:
.Subject = "Opschonen contactpersonen artikeldata" & cell.Value
 
Beste Harrt,

Bedankt voor uw bericht.

Ik krijgen echter nog steeds de foutmelding "Compileerfout: ongeldig buiten procedure".

Het woord "False" bij "Application.Screenupdating is dan ook blauw gearceerd.

Hopelijk kun je me verder helpen.

Groet,
Gerwin
 
Volgens mij klopt de beschrijving niet met de code en daarom kan je beter een voorbeeldbestand plaatsen. Mij lijkt het stug dat je een fout krijgt op Application.Screenupdating maar je hebt ook de volledige code niet geplaatst.

Misschien dat zoiets werkt.

Code:
Sub VenA()
  For Each cl In Columns(2).SpecialCells(2)
    If cl.Value Like "?*@?*.?*" And LCase(cl.Offset(, 1)) = "yes" Then
      With CreateObject("Outlook.Application").CreateItem(0)
        .to = cl.Value
        .Subject = "Opschonen contactpersonen artikeldata" & cl.Offset(, -1).Value
        .Body = "Beste collega, Hierbij een test mail. Groet, Gerwin en Michael " & cl.Value
        .display '.send
      End With
    End If
  Next cl
End Sub
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan