Ako želite da pošaljete sve radne listove u Excel radnoj svesci kao zasebne Outlook poruke e-pošte, možete koristiti metodu predstavljenu u ovom članku. Može vas voditi da ga realizujete u velikom broju bez problema slanja jednog po jednog.
U mom prethodnom postu “2 brza metoda za slanje Excel radnog lista kao Outlook e-pošte", možete naučiti dva načina za slanje jednog Excel radnog lista kao e-pošte. Ako želite grupno poslati sve radne listove iz jedne radne knjige 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 koji može brzo realizirati takvo "grupno slanje".

Grupno pošaljite sve radne listove u jednoj Excel radnoj svesci kao zasebne e-poruke
- Na prvom mjestu, trebali biste otvoriti izvornu Excel radnu knjigu.
- Zatim, nakon što uđete u prozor Excela, trebali biste dodirnuti prečice tipke “Alt + F11”.
- Zatim će se prikazati još jedan 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, ovaj makro možete pokrenuti pritiskom na tipku F5 ili klikom na ikonu “Run” na traci sa alatkama.
- E-poruke, koje odgovaraju svim radnim listovima u ovoj Excel radnoj svesci, odjednom će se prikazati u Outlooku.
- Konačno, možete ponovo provjeriti sve detalje e-pošte i na kraju kliknuti na dugme “Pošalji” da pošaljete e-poruke.
Primijenite moćan alat za oporavak ako nema rezervnih kopija
Sve više korisnika razumije važnost sigurnosne kopije podataka. Sve dok ste napravili sigurnosnu kopiju svog PST fajla, PST oporavak nakon oštećenja će biti prilično jednostavno. Ali ako ne postoji efikasna i ažurna rezervna kopija PST-a, nemate izbora osim da iskoristite pomoć eksternog alata za popravku PST-a, npr. DataNumen Outlook Repair. Može popraviti ugrožene PST datoteke kao povjetarac.
Uvod za autora:
Shirley Zhang je stručnjak za oporavak podataka DataNumen, Inc., koji je svjetski lider u tehnologijama za oporavak podataka, uključujući oporaviti sql i Outlook softverski proizvodi za popravku. Za više informacija posjetite www.datanumen.com
