Kako napisati uporabne makre v sporočilih Outlook 2016 in 2019?
Ste novi pri avtomatizaciji VBA Makri za Outlook? Naučite se vstaviti kodo VBA v Outlook 365 / 2016 / 2019.
Posodobljeno: avgust 2021; Velja za Microsoft Outlook 365 / 2019 / 2016
Tukaj je opomba, ki smo jo prejeli od bralca.
Hvala za vašo zelo uporabno Outlookovo pomoč pri kodiranju. Zanima me, ali lahko delite kodo za pomoč pri avtomatiziranju pošiljanja e-pošte v Outlooku? Vem, da obstaja več načinov za pošiljanje ponavljajočih se sporočil, vendar me posebej zanima uporaba VBA za to nalogo.
Hvala za vprašanje. Zdi se, da je samodejno pošiljanje e-pošte med najbolj uporabnimi in priljubljenimi nalogami, ki jih lahko avtomatizirate z VBA. Tukaj preberite več podrobnosti in preprost skript za začetek.
Pisanje VBA za pošiljanje e-pošte Outlook
V dokaj preprostem primeru spodaj bomo obravnavali naslednje korake:
Tukaj je preprosta koda VBA za samodejno ustvarjanje in pošiljanje preprostih e-poštnih sporočil. Upoštevajte, da morate ta skript preprosto izboljšati, tako da vključuje priloge datotek, naloge itd.', vendar začnimo z zelo osnovnim skriptom.
Sub SendMail()
Dim MyEmail As MailItem
Set MyEmail = Application.CreateItem(olMailItem)
With MyEmail
.To = ""
.Importance = olImportanceHigh
.Subject = ""
.Body = ""
.BodyFormat = olFormatHTML
.Display
End With
'I purposely commented the next line, uncomment it by removing the "'" sign to send your email.
' MyEmail.Send
End Sub
Bližnjica za makro Outlook VBA
Morda boste želeli preučiti povezavo kode VBA, ki ste jo pravkar napisali, z ukaznim gumbom v Outlooku. To vam bo omogočilo, da ga preprosto zaženete z bližnjice na Outlookovem traku.
To storite tako:
Možne težave z nastavitvami makra VBA
Če želite zagnati makre, boste morda morali prilagoditi nastavitve makra v Outlooku. Če je tako, je opisano, kako to storiti.
V lupini PowerShell lahko uporabite cmdlet Send-MailMessage za pošiljanje e-pošte. Vendar zahteva preverjanje pristnosti na poštnem strežniku in ne podpira sodobnih metod preverjanja pristnosti, kot sta OAuth in Microsoft Modern Authentication. Zato je pošiljanje e-pošte veliko lažje, če imate v računalniku konfiguriran Outlook profil.
Tukaj je primer skripta PowerShell, ki bere podatke iz datoteke Excel in uporablja Outlookov profil za pošiljanje e-pošte vsak uporabnik:
# odpri datoteko Excel
$ExcelObj = New-Object -comobject Excel.Application
$ExcelWorkBook = $ExcelObj.Workbooks.Open("C:\PS\user_list.xlsx")
$ExcelWorkSheet = $ExcelWorkBook.Sheets.Item("Sheet1")
# Pridobite število izpolnjenih vrstic v datoteki xlsx
$rowcount=$ExcelWorkSheet.UsedRange.Rows.Count
# Preglejte vse vrstice v stolpcu 1, začenši z drugo vrstico (te celice vsebujejo uporabniška imena in e-poštne naslove).
for($i=2;$i -le $rowcount;$i++){
$useremail = $ExcelWorkSheet.Columns.Item(1).Rows.Item($i).Text
$FullUsername = $ExcelWorkSheet.Columns.Item(2).Rows.Item($i).Text
$Status = $ExcelWorkSheet.Columns.Item(4).Rows.Item($i).Text
$pwdchange = $ExcelWorkSheet.Columns.Item(3).Rows.Item($i).Text
# Ustvari besedilo telesa sporočila
$strSubj = " Stanje vašega računa na domeni woshub.com "
$strBody = "Spoštovani " + $FullUsername
$strTelo = $strTelo + " `r`n Vaš račun v domeni woshub.com je v " + $Status
$strBody = $strBody + "`r`n Datum in čas zadnje spremembe gesla je: " + $pwdchange
$strfile="C:\ps\" + $useremail + ".txt"
# Predvidevamo, da se Outlook izvaja, če se ne izvaja, ga boste morali zagnati z ukazom $outlook = new-object -comobject outlook.application
$outlook = [Runtime.InteropServices.Marshal]::GetActiveObject("Outlook.Application")
$email = $outlook.CreateItem(0)
$email.To = $useremail
$email.Subject = $strSubj
$email.Body = $strBody
# Priložite datoteko (če je potrebno)
$email.Attachments.add($strfile)
#pošlji e-sporočilo
$email.Send()
}
$ExcelWorkBook.close($true)
Ta skript PowerShell predvideva, da se v vašem računalniku izvaja Outlook. Skript ustvari zadevo in telo e-pošte za vsak naslov SMTP prejemnika v datoteki XLSX in pripne datoteko. Nato pošlje e-pošto.
Ste novi pri avtomatizaciji VBA Makri za Outlook? Naučite se vstaviti kodo VBA v Outlook 365 / 2016 / 2019.
Naučite se preprosto podvojiti dogodke, sestanke in sestanke Outlookovega koledarja v Office 365, 2016 in 2019.
Naučite se, kako lahko oblikujete in ustvarite Outlookove uporabniške obrazce po meri.
Outlookova mapa Prejeto se ne posodablja samodejno? Naučite se, kako lahko samodejno osvežite svojo mapo Prejeto Outlook 365 / 2019 / 2016 / 2013.
Naučite se dodati/vdelati in poslati sliko gif v odhodno e-pošto Outlook 2016 in 2019.
Naučite se diagnosticirati in odpraviti različne težave z odklopom odjemalca Microsoft Outlook v sistemu Windows 10.
Naučite se pisati Outlookove makre za avtomatsko pošiljanje e-pošte.
Naučite se onemogočiti opomnike in obvestila iz koledarjev Outlook 2016/2019 v sistemu Windows in MAC.
Naučite se izboljšati delovanje Outlooka.
V tej objavi vam bo pomagal spremeniti geslo za račun Outlook.com in ohraniti sinhronizacijo operacijskega sistema Windows v vseh napravah.