VBA根据单元格值将电子邮件发送到excel中的电子邮件地址

时间:2019-10-23 13:58:58

标签: excel vba email

我完全陷入困境,想知道是否有人可以提供帮助,请以我在VBA上完整的Noobness露面。

我有一个共享的电子表格,我的团队使用该电子表格来跟踪需要重新扫描的文档的任务。请查看屏幕截图。

Screenshot

我在工作表上有代码,当业务代表在A列中输入值时,该代码会自动更改“ M”列。

B列(隐藏)具有一个Vlookup,它使用另一张纸上的数组作为A列电子邮件地址中的代理。

我做了一些研究,并试图创建一个代码,该代码将在M列中搜索任何未完成/未采取行动的工作“否”,并自动向代理发送电子邮件提醒,并在A列和同一行的B(还包括标题编号)

但是我只是无法使代码正常工作。

有什么想法或建议让我错了吗?


    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("M").Cells.SpecialCells(xlCellTypeConstants)
        If LCase(Cells(cell.Row, "M").Value) = "No" Then

            Set OutMail = OutApp.CreateItem(0)
            On Error Resume Next
            With OutMail
                .To = cell.Value
                .Subject = "Re-Scan Reminder"
                .Body = "Dear " & Cells(cell.Row, "A").Value _
                      & vbNewLine & vbNewLine & _
                        "You still have outstanding work on the Rescan Spreadsheet " & _
                        " Title number:  " & Cells(cell.Row, "E").Value _

                .Display
            End With
            On Error GoTo 0
            Set OutMail = Nothing
        End If
    Next cell

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

0 个答案:

没有答案