Второй кусок нового кода определенно не будет работать, потому что SenderEmailAddress
является свойством Msg
.
Для возврата Msg.SenderEmailAddress = "test@noreplay.com"
True
должно быть точное совпадение. «Test@noreplay.com» или «test@NoReplay.com» или любое другое подобное изменение не вернет True
.
Предложение 1:
Восстановить исходный код, но добавить дополнительный оператор
If (Msg.SenderName = "Doe, Joe") And _
(Msg.Subject = "Test: Smartsheet") And _
(Msg.Attachments.Count >= 1) Then
Debug.Print Msg.SenderEmailAddress
После того, как вы запустите макрос, в Немедленном окне будет список адресов электронной почты отправителей писем Джо Доу, чтобы вы могли проверить, соответствуют ли они вашим ожиданиям.
Предложение 2:
Сделать сравнение без учета регистра, чтобы:
If (LCase(Msg.SenderEmailAddress) = "test@noreplay.com") And _
(Msg.Subject = "Test: Smartsheet") And _
(Msg.Attachments.Count >= 1) Then