Boa tarde!
Tenho uma planilha com duas colunas. Na primeira delas tenho uma fórmula que vem de outra aba, e tem como resultado ou um endereço de e-mail ou um 0. Na coluna do lado, tenho o corpo do e-mail (a mensagem difere dependendo do e-mail). Anexei uma imagem com um exemplo da minha tabela (coloquei um e-mail genérico, mas cada linha terá um e-mail diferente, excluindo as que tem valor zero).
Tentei criar uma macro que lesse cada linha desta coluna F, e enviasse os e-mails com o corpo da coluna da esquerda caso haja um e-mail na coluna F. Porém, minha macro não está enviando e-mail nenhum. Vocês poderiam me ajudar? Obrigado!
Sub enviaremail()
Dim OutApp As Object
Dim OutMail As Object
Dim sh As Worksheet
Dim cell As Range
Dim FileCell As Range
Dim rng As Range
With Application
.EnableEvents = False
.ScreenUpdating = False
End With
Set sh = Sheets("Mensagem")
Set OutApp = CreateObject("Outlook.Application")
For Each cell In sh.Columns("F").Cells.SpecialCells(xlCellTypeFormulas)
Set rng = sh.Cells(cell.Row, 1).Range("G1")
If cell.Value Like "#0" And _
Application.WorksheetFunction.CountA(rng) > 0 Then
Set OutMail = OutApp.CreateItem(0)
With OutMail
.to = cell.Value
.Subject = "Antecipação de Parcelas - Teriva Imperatriz"
.Body = cell.Offset(0, 1).Value
.Send
End With
Set OutMail = Nothing
End If
Next cell
Set OutApp = Nothing
With Application
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
Postado : 24/11/2017 1:06 pm