Si vous souhaitez envoyer toutes les feuilles de calcul d'un classeur Excel en tant qu'e-mails Outlook distincts, vous pouvez utiliser la méthode présentée dans cet article. Il peut vous guider pour le réaliser en masse sans en envoyer un par un.
Dans mon précédent article «2 méthodes rapides pour envoyer une feuille de calcul Excel en tant qu'e-mail OutlookDans cet article, vous pouvez découvrir deux méthodes pour envoyer une feuille de calcul Excel par e-mail. Si vous souhaitez envoyer par lots toutes les feuilles d'un classeur comme e-mails individuels, l'utilisation de l'une ou l'autre des deux méthodes mentionnées sera fastidieuse. C'est pourquoi nous vous proposons ici une autre méthode, permettant d'effectuer cet envoi groupé rapidement.

Envoyer par lots toutes les feuilles de calcul dans un classeur Excel en tant qu'e-mails séparés
- En premier lieu, vous devez ouvrir le classeur Excel source.
- Ensuite, après être entré dans la fenêtre Excel, vous devez appuyer sur les raccourcis clavier "Alt + F11".
- Ensuite, une autre fenêtre appelée "Microsoft Visual Basic pour Applications" s'affichera.
- Dans celui-ci, vous devez ouvrir un module inutilisé ou insérer un nouveau module.
- Ensuite, vous pouvez copier le code VBA suivant dans ce module.
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
- Après cela, vous pouvez déclencher cette macro en appuyant sur la touche F5 ou en cliquant sur l'icône "Exécuter" dans la barre d'outils.
- Immédiatement, les e-mails, qui correspondent à toutes les feuilles de calcul de ce classeur Excel, s'afficheront dans Outlook.
- Enfin, vous pouvez revérifier tous les détails des e-mails et enfin cliquer sur le bouton "Envoyer" pour envoyer les e-mails.
Appliquer un outil de récupération puissant si aucune sauvegarde
De plus en plus d'utilisateurs ont compris l'importance des sauvegardes de données. Tant que vous avez sauvegardé votre fichier PST, Récupération PST après les dommages sera assez simple. Mais s'il n'y a pas de sauvegarde PST efficace et à jour, vous n'avez pas d'autre choix que de prendre l'aide d'un outil de réparation PST externe, comme DataNumen Outlook Repair. Il peut réparer les fichiers PST compromis comme un jeu d'enfant.
Introduction de l'auteur:
Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris récupérer sql et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com
