Отправка электронного письма из Excel, в котором указаны внесенные изменения - PullRequest
0 голосов
/ 05 октября 2018

Мне нужно определить изменения, внесенные в электронную таблицу Excel, и отправить эти изменения по электронной почте в другую группу.У меня очень мало опыта в VBA.У меня есть электронная таблица, которая может отправлять электронную почту после внесения изменений, но я хочу добавить в текст сообщения эти изменения.Спасибо!

Отправка электронной почты - это Workbook_BeforeClose событие

Sub SendEmail()

    Dim myMsg As Object
    Set myMsg = CreateObject("CDO.Message")
    Dim conadd As String
    conadd = "http://schemas.microsoft.com/cdo/configuration/"
    Dim strSender As String, strLocation As String

    'Send mail
    With myMsg
        .To = "**********.com"
        .FROM = "**********.com"
        .Subject = "CWPL Has Been Updated"
        .TextBody = "Please check the CWPL to identify the update and if it currently applies to us."
        With .Configuration.Fields
            .Item(conadd & "sendusing") = 2
            .Item(conadd & "smtpserver") = "**********.com"
            .Item(conadd & "smtpserverport") = 25
            .Update
        End With
        .Send
    End With

ExitFunc:
    Set myMsg = Nothing
    Exit Sub

Err:
    MsgBox "There was a problem sending the CWPL Update message to Fusion Group", vbInformation, "CWPL Update Message Complete"
    GoTo ExitFunc

End Sub

Добавлен Debug.Print "Новые значения" & target.Address (0, 0). Значение, но я получаю компиляциюошибка: недопустимый квалификатор. Адрес является виновником ....

Также - вот код Worksheet_Change

Private Sub Worksheet_Change(ByVal target As Range)
Dim KeyCells As Range
Set KeyCells = Range("A1:D1000")

If Not Application.Intersect(KeyCells, Range(target.Address)) _
    Is Nothing Then
    Debug.Print "Cells that changed: " & target.Address(0, 0), _

End If

End Sub

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