Email на основе флажка - если функция - PullRequest
0 голосов
/ 16 октября 2018

Я пытаюсь отправить автоматическое письмо в зависимости от того, установлен ли флажок.

Код работает без функции If.Но при этом я получаю:

Ошибка 438: объект не поддерживает это свойство или метод.

Я бы предпочел сохранить функцию If, чтобыпочта отправляется только после установки флажка. Без функции If почта отправляется и при снятии отметки.

Sub Checkbox1_Click()
    Dim OutLookApp As Object
    Dim Mail As Object
    Dim subject_ As String
    Dim body_ As String
    subject_ = "Something"
    body_ = "Something else"
    If Sheets("Sheet1").CheckBox1.Value = True Then
        Set OutLookApp = CreateObject("Outlook.Application")
        Set Mail = OutLookApp.CreateItem(0)
        Application.DisplayAlerts = False
        With Mail
            .Subject = subject_
            .Body = body_
            .To = "email"
            .CC = "otheremail"
            .Importance = 2
            .Send
        End With
        Application.DisplayAlerts = True
    End If
End Sub

1 Ответ

0 голосов
/ 17 октября 2018

Вы можете попробовать использовать ActiveSheet.OLEObjects ("CheckBox1").Object.Value> 0 в качестве условия для проверки.Для получения дополнительной информации см. Следующие ссылки:

Использование имен элементов управления с коллекциями Shapes и OLEObjects

Проверка наличия флажка на основе листа

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