Ввод данных ячейки из Excel в Outlook - PullRequest
0 голосов
/ 22 февраля 2020

Я хочу создать автоматический почтовый скрипт, использующий vba для чтения из электронной таблицы Excel; адрес электронной почты и даты (такого рода вещи) затем поместите их в правильные поля для отправки

Было бы предпочтительно, если бы он также мог завершить sh строку таблицы и начать новую с новое электронное письмо

В настоящее время я могу написать электронное письмо с помощью vba, но это все, что нужно, и вручную диктовать поля в скрипте, но это все. Любая помощь в том, как автоматически вводить данные в ячейки, была бы очень признательна.

Спасибо :)

Редактировать 1:

Option Explicit

Sub Send_email()

Dim Line As Long
Dim OutlookApp As Outlook.Application
Dim OutlookMail As Outlook.MailItem
Set OutlookApp = New Outlook.Application

    For Line = 2 To 3
        Set OutlookMail = OutlookApp.CreateItem(olMailItem)
        With OutlookMail
            .To = Range("A" & Line).Value
            .CC = ""
            .BCC = ""
            .Subject = "OVERDUE DOCUMENTATION - " & Range("C" & Line).Value & " " & Range("B" & Line).Value & " - " & Range("D" & Line).Value

            .BodyFormat = olFormatHTML
            .Display
            .HTMLBody = "Dear " & Range("F" & Line).Value & "," & "<br>" & "<br>" & "The documentation for " & Range("C" & Line).Value & " " & Range("B" & Line).Value & "'s appointment with Dr " & Range("E" & Line).Value & " on " & Range("D" & Line).Value & " is now overdue." & "<br>" & "<br>" & "Please send through the documentation immediately or the doctor may cancel this appointment due to insufficient time too view the documents prior to the appointment." & "<br>" & "<br>" & "<br>" & "Regards," & "<br>" & "<br>" & "Documents Team" & .HTMLBody
          End With
    Next Line

End Sub

Это, кажется, решит, если кто-нибудь имеет ту же проблему. Спасибо

1 Ответ

0 голосов
/ 22 февраля 2020

Приведенный ниже код более конкретен c при определении ячеек, которые работали во время моего тестирования.

Option Explicit

Sub Send_email()

    Dim Line As Long
    Dim OutlookApp As Outlook.Application
    Dim OutlookMail As Outlook.MailItem
    Set OutlookApp = New Outlook.Application
    Dim wb As Workbook: Set wb = ThisWorkbook
    Dim ws As Worksheet: Set ws = wb.Worksheets("Sheet1")

    For Line = 2 To 3
        Set OutlookMail = OutlookApp.CreateItem(olMailItem)
        With OutlookMail
            .To = ws.Range("A" & Line).Value
            .CC = ""
            .BCC = ""
            .Subject = "OVERDUE DOCUMENTATION - " & ws.Range("C" & Line).Value & " " & ws.Range("B" & Line).Value & " - " & ws.Range("D" & Line).Value

            .BodyFormat = olFormatHTML
            .Display
            .HTMLBody = "Dear " & ws.Range("F" & Line).Value & "," & "<br>" & "<br>" & "The documentation for " & ws.Range("C" & Line).Value & " " & ws.Range("B" & Line).Value & "'s appointment with Dr " & ws.Range("E" & Line).Value & " on " & ws.Range("D" & Line).Value & " is now overdue." & "<br>" & "<br>" & "Please send through the documentation immediately or the doctor may cancel this appointment due to insufficient time too view the documents prior to the appointment." & "<br>" & "<br>" & "<br>" & "Regards," & "<br>" & "<br>" & "Documents Team" & .HTMLBody
          End With
    Next Line

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...