Come inviare in batch tutti i fogli di lavoro in una cartella di lavoro di Excel come e-mail di Outlook separate

Condividi ora:

Se desideri inviare tutti i fogli di lavoro in una cartella di lavoro di Excel come e-mail di Outlook separate, puoi utilizzare il metodo introdotto in questo articolo. Può guidarti a realizzarlo in blocco senza inviarne fastidiosamente uno per uno.

Nella mia precedente post "2 metodi rapidi per inviare un foglio di lavoro Excel come e-mail di Outlook", puoi imparare due modi per inviare un foglio di lavoro Excel come e-mail. Se desideri inviare in batch tutti i fogli di lavoro in una cartella di lavoro come singole e-mail, utilizzando uno dei due mezzi menzionati in quel post sarà piuttosto noioso e fastidioso. Pertanto, qui introdurremo un altro modo, che può realizzare tale "Invio batch" in un tempo rapido.

Invia in batch tutti i fogli di lavoro in una cartella di lavoro di Excel come e-mail di Outlook separate

Invia in batch tutti i fogli di lavoro in una cartella di lavoro di Excel come e-mail separate

  1. In primo luogo, dovresti aprire la cartella di lavoro Excel di origine.
  2. Quindi, dopo essere entrato nella finestra di Excel, dovresti toccare le scorciatoie da tastiera "Alt + F11".
  3. Successivamente, verrà visualizzata un'altra finestra denominata "Microsoft Visual Basic for Applications".
  4. In esso, devi aprire un modulo inutilizzato o inserire un nuovo modulo.
  5. Successivamente, puoi copiare il seguente codice VBA in questo modulo.
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

Codice VBA: invia in batch tutti i fogli di lavoro in una cartella di lavoro di Excel come e-mail di Outlook separate

  1. Successivamente, è possibile attivare questa macro premendo il tasto F5 o facendo clic sull'icona "Esegui" nella barra degli strumenti.
  2. Immediatamente, le e-mail, che corrispondono a tutti i fogli di lavoro in questa cartella di lavoro di Excel, verranno visualizzate in Outlook.
  3. Infine, puoi ricontrollare tutti i dettagli delle e-mail e infine fare clic sul pulsante "Invia" per inviare le e-mail.

Applica un potente strumento di recupero se non ci sono backup

Sempre più utenti hanno capito l'importanza dei backup dei dati. Finché hai eseguito il backup del tuo file PST, Recupero PST dopo il danno sarà abbastanza semplice. Ma se non esiste un backup PST efficace e aggiornato, non hai altra scelta che ricorrere all'aiuto di uno strumento di riparazione PST esterno, come DataNumen Outlook Repair. Può riparare i file PST compromessi come un gioco da ragazzi.

Introduzione dell'autore:

Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui recuperare sql e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.