Обновление Excel из электронной почты на основе строки темы - PullRequest
0 голосов
/ 19 февраля 2019

Я хочу сравнить строку темы из электронной почты Outlook, в основном просто шестизначное число, и сопоставить тот же номер с существующим столбцом Excel и пометить как выполненное в другой ячейке в той же строке.Например, если я отправляю электронное письмо из outlook с темой 123456, код должен найти столбец в столбце excel с номером 123456 и автоматически пометить как завершенный в той же строке, где существует 123456.Если бы кто-нибудь мог помочь мне с кодом, я был бы очень признателен.

1 Ответ

0 голосов
/ 19 февраля 2019

Прежде всего, вам нужно получить список «имен отправителей», для этого используйте этот код: (Этот код взят из другого сообщения от кого-то по имени PatricK)

Sub GetFromInbox()
    Const olFolderInbox = 6
    Dim olApp As Object, olNs As Object
    Dim oRootFldr As Object
    Dim lCalcMode As Long

    Dim oItem As Object

    Set olApp = CreateObject("Outlook.Application")
    Set olNs = olApp.GetNamespace("MAPI")
    Set oRootFldr = olNs.GetDefaultFolder(olFolderInbox) '.Folders("Inbox")

    For Each oItem In oRootFldr.Items
        If TypeName(oItem) = "MailItem" Then
            With oItem
                SearchNBR (.SenderName)
                lrow = lrow + 1
            End With
        End If
    Next

    Set oRootFldr = Nothing
    Set olNs = Nothing
    Set olApp = Nothing
End Sub

Как только вы получитеотправитель почты, найдите его на нужной вкладке и отметьте его зеленым!

Private Sub SearchNBR(NBR)

    Dim rgFound As Range
    On error resume next
    'Search on the Sheet and range you want!
    Set rgFound = Range("A1:A1000").Find(NBR)

    'It will mark the Sender name in colour green
    rgFound.Interior.Color = vbGreen

End Sub

Надеюсь, это работает для вас !!!!Ура!

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