Svaki put kada ažurirate određeni Excel radni list, ako uvijek trebate poslati obavijest e-poštom određenim primateljima, možete upotrijebiti metodu predstavljenu u ovom članku.
Neki korisnici traže rješenje da dopuste MS Excelu da automatski šalje obavijest Outlook e-poštom određenim osobama svaki put kada ažuriraju određeni radni list, pri čemu često zaborave poslati takvu e-poštu. Sada, u nastavku ćemo vas uputiti kako postići ovu funkciju s VBA kodom.

Automatsko slanje e-pošte kada se određeni Excel radni list ažurira
- Kao prvo, pristupite izvornoj Excel radnoj knjizi koja sadrži određeni radni list.
- Zatim u prozoru programa MS Excel idite na izbornik 'Datoteka' i odaberite 'Opcije'.
- Zatim u prozoru "Opcije programa Excel" prijeđite na karticu "Centar za pouzdanost" i kliknite na gumb "Postavke centra za pouzdanost".
- Nakon toga, u novom prozoru prijeđite na karticu "Postavke makronaredbi", ispod koje trebate odabrati "Omogući sve makronaredbe".
- Nakon toga otvorite karticu "Opcije privatnosti" i omogućite značajku "Ukloni osobne podatke iz svojstava datoteke pri spremanju".
- Zatim pritisnite nekoliko “OK” za spremanje ovih postavki.
- Nakon što napravite sigurnosnu kopiju u Excel radnoj knjizi, pristupite određenom radnom listu.
- Desnom tipkom miša kliknite naziv radnog lista na donjoj bočnoj traci i odaberite "Prikaži kod".
- Nakon toga kopirajte sljedeći VBA kod u projekt određenog lista.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim nConfirmation As Integer
Dim objNewWorkbook As Excel.Workbook
Dim objNewWorksheet As Excel.Worksheet
Dim objOutlookApp As Object
Dim objMail As Object
nConfirmation = MsgBox("Do you want to send an email notification about the sheet updating now?", vbInformation + vbYesNo, "Mail Sheet Updates")
If nConfirmation = vbYes Then
ActiveWorkbook.Save
On Error Resume Next
Set objOutlookApp = CreateObject("Outlook.Application")
Set objMail = objOutlookApp.CreateItem(olMailItem)
'Change the email details as per your needs
With objMail
.To = "test@datanumen.com"
.Subject = "Email Notifying Sheet Updates"
.Body = "Hi," & vbCrLf & vbCrLf & "The worksheet " & Chr(34) & ActiveWorkbook.Sheets(1).Name & Chr(34) & " in this Excel workbook attachment is updated."
'Attach this workbook
.Attachments.Add ActiveWorkbook.FullName
.Send
End With
End If
End Sub
- Nakon toga, trebali biste spremiti ovu radnu knjigu kao Excel radnu knjigu s omogućenim makronaredbama.
- Prvo zatvorite prozor "Microsoft Visual Basic za aplikacije".
- Zatim kliknite "Datoteka" u lijevom gornjem kutu.
- Zatim odaberite "Spremi kao".
- U dijaloškom okviru odaberite "Excel radna knjiga s omogućenom makronaredbom" u polju "Spremi kao vrstu".
- Na kraju kliknite gumb "Spremi".
- Konačno, možete zatvoriti ovu radnu knjigu.
- Sada možete otvoriti prethodno spremljenu Excel radnu knjigu s omogućenim makronaredbama.
- Kada napravite bilo kakve promjene u određenom radnom listu, dobit ćete poruku s pitanjem želite li poslati obavijest e-poštom.
- Kada kliknete gumb "Da", Outlook e-pošta bit će poslana unaprijed definiranim primateljima.
- Ova će e-poruka izgledati kao na slici ispod:
Popravite oštećenu Outlook podatkovnu datoteku
Možda ste se ikada susreli s oštećenjem Excel datoteke. Zapravo, Outlook podatkovna datoteka je jednako ranjiva kao Excel datoteka. Na primjer, nepropisno zatvaranje Outlooka može lako dovesti do oštećenja PST datoteke. Stoga je bitno poduzeti radnje za zaštitu Outlook datoteke, uključujući izradu redovitih sigurnosnih kopija podataka kao i pripremu robusnog alata za popravak PST-a, kao što je DataNumen Outlook Repair. Ovaj je uslužni program dovoljno moćan da popraviti PST pitanja i oporavak PST podataka.
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 sql popravak i softverske proizvode za popravak Outlooka. Za više informacija posjetite www.datanumen.com






