Ошибка автоматизации при отправке электронного письма в VBA - PullRequest
0 голосов
/ 17 мая 2019

enter image description here

Я отправляю электронное письмо на основании определенного условия через VBA. Код работает нормально для первой итерации, когда управление переходит ко 2-й итерации, я получаю «ошибку автоматизации», может кто-нибудь помочь мне исправить это.

    Dim Tbl As ListObject
    Dim LastRow2  As Long, LastRow3 As Long
    Dim i As Integer
    Dim DevName As String
    Dim USDescription As String
    Dim USnum As String

    Set Tbl = wb.Worksheets("Q2.5").ListObjects("Table4")
    MainSheet.Activate
    LastRow3 = Tbl.ListColumns(1).Range.Rows.Count '<-- last row in Column A in your Table

    i = 1
    Do Until i = LastRow3
        MainSheet.Activate

        If MainSheet.Range("A" & i).Interior.Color = RGB(193, 193, 193) Then
            'MsgBox "A" & i & "  is red!!"
            DevName = MainSheet.Range("A" & i).Offset(0, 4).Value
            USnum = MainSheet.Range("A" & i).Offset(0, 0).Value
            USDescription = MainSheet.Range("A" & i).Offset(0, 3).Value

            Dim OlApp As Outlook.Application
            Set OlApp = CreateObject("Outlook.Application")

            Dim OlMail As Outlook.MailItem
            Set OlMail = OlApp.CreateItem(OlMailItem)

            If DevName = "Nikith" Then
                OlMail.To = "karthik.ba@gmail.com" --> **'Getting error here on the 2nd iteration**
                OlMail.CC = "harish.joei@gmail.com"[![enter image description here][1]][1]
                OlMail.Subject = "Effort Overdue for the user story" & USnum & "-" & USDescription
                OlMail.Body = "Effort Overdue for the user story" & USnum & "-" & USDescription
                OlMail.Send
            ElseIf DevName = "Sayed" Then
                OlMail.To = "sayed.raheman@gmail.com"
                OlMail.CC = "harish.joe@gmail.com"
                OlMail.Subject = "Effort Overdue for the user story" & USnum & "-" & USDescription
                OlMail.Body = "Effort Overdue for the user story" & USnum & "-" & USDescription
                OlMail.Send
            End If
        End If
        i = i + 1
    Loop
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...