Как да изпращате групово всички работни листове в една работна книга на Excel като отделни имейли на Outlook

Споделете сега:

Ако искате да изпратите всички работни листове в работна книга на Excel като отделни имейли на Outlook, можете да използвате метода, представен в тази статия. Тя може да ви насочи да го реализирате групово, без да изпращате много проблеми един по един.

В предишната ми публикация „2 бързи метода за изпращане на работен лист на Excel като имейл в Outlook„, можете да научите два начина за изпращане на един работен лист на Excel като имейл. Ако искате да изпратите групово всички работни листове в една работна книга като отделни имейли, използването на който и да е от двата начина, споменати в тази публикация, ще бъде доста досадно и обезпокоително. Затова тук ще ви представим друг начин, който може да реализира такова „групово изпращане“ за бързо време.

Групово изпращане на всички работни листове в една работна книга на Excel като отделни имейли на Outlook

Групово изпращане на всички работни листове в една работна книга на Excel като отделни имейли

  1. На първо място, трябва да отворите изходната работна книга на Excel.
  2. След това, след като влезете в прозореца на Excel, трябва да докоснете клавишните комбинации „Alt + F11“.
  3. След това ще се покаже друг прозорец, наречен „Microsoft Visual Basic for Applications“.
  4. В него трябва да отворите неизползван модул или да поставите нов модул.
  5. Впоследствие можете да копирате следния VBA код в този модул.
Sub SendEachWorksheet_inOutlookEmail()
    Dim objWorksheet As Excel.Worksheet
    Dim objRange As Excel.Range
    Dim objTempWorkbook As Excel.Workbook
    Dim objTempWorksheet As Excel.Worksheet
    Dim strTempFolder As String
    Dim strHTMLFile As String
    Dim objHTMLFile As Object
    Dim objFileSystem As Object
    Dim objTextStream As Object
    Dim objOutlookApp As Outlook.Application
    Dim objMail As Outlook.MailItem
 
    For Each objWorksheet In ActiveWorkbook.Sheets
        Set objRange = objWorksheet.UsedRange
        objRange.Copy
 
        Set objTempWorkbook = Excel.Application.Workbooks.Add(1)
        Set objTempWorksheet = objTempWorkbook.Sheets(1)
        With objTempWorksheet.Cells(1)
             .PasteSpecial xlPasteValues
             .PasteSpecial xlPasteColumnWidths
             .PasteSpecial xlPasteFormats
        End With
 
        strTempFolder = CStr(Environ("USERPROFILE")) & "\AppData\Local\Temp"
        strHTMLFile = strTempFolder & "\Temp" & Format(Now, "yyyymmddhhmmss") & ".htm"
        Set objHTMLFile = objTempWorkbook.PublishObjects.Add(xlSourceRange, strHTMLFile, objTempWorksheet.Name, objTempWorksheet.UsedRange.Address)
        objHTMLFile.Publish (True)
 
        Set objOutlookApp = CreateObject("Outlook.Application")
        Set objMail = objOutlookApp.CreateItem(olMailItem)
 
        Set objFileSystem = CreateObject("Scripting.FileSystemObject")
        Set objTextStream = objFileSystem.OpenTextFile(strHTMLFile)
        objMail.HTMLBody = objTextStream.ReadAll
 
        'Change the email details as per your needs
        With objMail
             .To = "test@datanumen.com"
             .Subject = objWorksheet.Name
             .Display
        End With
 
        objTextStream.Close
        objTempWorkbook.Close False
        Kill strHTMLFile
    Next
End Sub

VBA код - Групово изпращане на всички работни листове в една работна книга на Excel като отделни имейли на Outlook

  1. След това можете да задействате този макрос, като натиснете бутона F5 или щракнете върху иконата „Run“ в лентата с инструменти.
  2. Имейлите, които съответстват на всички работни листове в тази работна книга на Excel, веднага ще се покажат в Outlook.
  3. И накрая, можете да проверите отново всички данни за имейлите и накрая да кликнете върху бутона „Изпрати“, за да изпратите имейлите.

Приложете мощен инструмент за възстановяване, ако няма резервни копия

Все повече потребители разбират важността на архивирането на данни. Докато сте архивирали вашия PST файл, Възстановяване на PST след повреда ще бъде съвсем проста. Но ако няма ефективно и актуално архивиране на PST, нямате друг избор, освен да се възползвате от външен инструмент за ремонт на PST, като DataNumen Outlook Repair. Той може да поправи компрометирани PST файлове като бриз.

Въведение на автора:

Шърли Джанг е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително възстанови sql и outlook софтуерни продукти за ремонт. За повече информация посетете WWW.datanumen.com

Споделете сега:

Коментарите са забранени.