Ako želite poslati sve radne listove u Excel radnoj knjizi kao zasebne poruke e-pošte programa Outlook, možete koristiti metodu predstavljenu u ovom članku. Može vas voditi da to realizirate u rasutom stanju bez problematičnog slanja jednog po jednog.
U mom prethodnom postu "2 brze metode za slanje Excel radnog lista kao Outlook e-pošte", možete naučiti dva načina slanja jednog Excel radnog lista kao e-pošte. Ako želite skupno poslati sve radne listove u jednoj radnoj knjizi kao pojedinačne e-poruke, korištenje bilo kojeg od dva načina spomenuta u tom postu bit će prilično zamorno i problematično. Stoga ćemo ovdje predstaviti još jedan način kojim se takvo "skupno slanje" može brzo ostvariti.

Grupno pošaljite sve radne listove u jednoj Excel radnoj knjizi kao zasebne e-poruke
- Prije svega, trebali biste otvoriti izvornu Excel radnu knjigu.
- Zatim, nakon što uđete u prozor programa Excel, trebate dodirnuti prečace tipki "Alt + F11".
- Zatim će se prikazati drugi prozor pod nazivom "Microsoft Visual Basic za aplikacije".
- U njemu morate otvoriti neiskorišteni modul ili umetnuti novi modul.
- Nakon toga možete kopirati sljedeći VBA kod u ovaj modul.
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
- Nakon toga, ovu makronaredbu možete pokrenuti pritiskom na tipku F5 ili klikom na ikonu "Pokreni" na alatnoj traci.
- Odmah će se poruke e-pošte, koje odgovaraju svim radnim listovima u ovoj Excel radnoj knjizi, prikazati u programu Outlook.
- Na kraju, možete ponovno provjeriti sve detalje e-pošte i na kraju kliknuti gumb "Pošalji" za slanje e-poruka.
Primijenite snažan alat za oporavak ako nema sigurnosnih kopija
Sve više i više korisnika shvaća važnost sigurnosnih kopija podataka. Sve dok imate sigurnosnu kopiju svoje PST datoteke, PST oporavak nakon oštećenja će biti vrlo jednostavan. Ali ako ne postoji učinkovita i ažurirana sigurnosna kopija PST-a, nemate izbora nego uzeti pomoć vanjskog alata za popravak PST-a, kao što je DataNumen Outlook Repair. Može popraviti ugrožene PST datoteke kao povjetarac.
Uvod za autora:
Shirley Zhang stručnjakinja je za oporavak podataka u DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući oporaviti sql i softverske proizvode za popravak Outlooka. Za više informacija posjetite www.datanumen.com
