скопируйте последние 4 письма из определенной папки outlook в лист Excel с помощью поля ввода для упоминания необходимых писем (пример 4) - PullRequest
0 голосов
/ 30 мая 2019

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

Sub Mail_Export()

    Dim outlookapp As Outlook.Application
    Dim outlooknamespace As Namespace
    Dim folder As MAPIFolder
    Dim outlookmail As Variant
    Dim i As Integer
    Dim wrkName As String
    Dim item As Object
    Dim Inbox As MAPIFolder
    Dim doClip As MSForms.dataobject
    Dim lRow As Long
    Application.ScreenUpdating = False
    Set outlookapp = New Outlook.Application
    Set outlooknamespace = outlookapp.GetNamespace("MAPI")
    Set ns = GetNamespace("MAPI")
    Set Inbox = ns.PickFolder
    Set doClip = New MSForms.dataobject
   i = 1

    Application.Worksheets("Mail").UsedRange.Clear

    For Each item In Inbox.Items
     lRow = Cells(Rows.Count, 1).End(xlUp).Row

    'If Inbox.Items.Count > 0 Then

                      doClip.SetText item.Body
                      doClip.PutInClipboard
                      ActiveSheet.Cells(lRow, 1).PasteSpecial

                      i = i + 1

             'End If
     Next

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