Ako písať užitočné makrá v správach programu Outlook 2016 a 2019?
Ste novým používateľom makier VBA pre automatizáciu Outlooku? Zistite, ako vložiť kód VBA do Outlooku 365/2016/2019.
Aktualizované: august 2021; Platí pre Microsoft Outlook 365/2019/2016
Tu je poznámka, ktorú sme dostali od čitateľa.
Ďakujeme za vašu veľmi užitočnú pomoc s kódovaním programu Outlook. Zaujímalo by ma, či môžete zdieľať nejaký kód, ktorý pomôže automatizovať odosielanie e-mailov v programe Outlook? Viem, že existuje niekoľko spôsobov, ako posielať opakujúce sa správy, ale konkrétne ma zaujíma použitie VBA pre túto úlohu.
dakujem za otazku. Zdá sa, že automatické odosielanie e-mailov patrí medzi najužitočnejšie a najobľúbenejšie úlohy, ktoré môžete automatizovať pomocou VBA. Prečítajte si ďalšie podrobnosti a jednoduchý skript, ktorý vám pomôže začať tu.
Písanie VBA na odosielanie e-mailov programu Outlook
V pomerne jednoduchom príklade nižšie pokryjeme nasledujúce kroky:
Tu je jednoduchý kód VBA na automatické vytváranie a odosielanie jednoduchých e-mailov. Všimnite si, že tento skript môžete jednoducho vylepšiť tak, aby obsahoval prílohy súborov, úlohy atď., ale začnime s veľmi jednoduchým 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
Skratka makra Outlook VBA
Možno by ste sa chceli pozrieť na priradenie kódu VBA, ktorý ste práve napísali, k príkazovému tlačidlu v programe Outlook. To vám umožní jednoducho ho spustiť zo skratky umiestnenej na páse s nástrojmi programu Outlook.
Postup:
Možné problémy s nastaveniami makra VBA
Ak chcete spustiť makrá, možno bude potrebné vyladiť nastavenia makier programu Outlook. Ak áno, tu je návod, ako to urobiť.
V prostredí PowerShell môžete na odosielanie e-mailov použiť cmdlet Send-MailMessage . Vyžaduje však, aby ste sa overili na poštovom serveri, a nepodporuje moderné metódy overenia, ako je OAuth a Microsoft Modern Authentication. Odoslanie e-mailu je teda oveľa jednoduchšie, ak máte v počítači nakonfigurovaný profil programu Outlook.
Tu je príklad skriptu PowerShell, ktorý číta údaje zo súboru programu Excel a používa profil programu Outlook na odoslanie e-mailu každý používateľ:
# otvorte súbor programu Excel
$ExcelObj = New-Object -comobject Excel.Application
$ExcelWorkBook = $ExcelObj.Workbooks.Open("C:\PS\user_list.xlsx")
$ExcelWorkSheet = $ExcelWorkBook.Sheets.Item("Hárok1")
# Získajte počet vyplnených riadkov v súbore xlsx
$rowcount=$ExcelWorkSheet.UsedRange.Rows.Count
# Prejdite všetky riadky v stĺpci 1, počnúc druhým riadkom (tieto bunky obsahujú používateľské mená a e-maily).
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
# Generovanie textu správy
$strSubj = " Stav vášho účtu na doméne woshub.com "
$strBody = "Vážený " + $FullUsername
$strBody = $strBody + " `r`n Váš účet v doméne woshub.com je v " + $Status
$strBody = $strBody + "`r`n Dátum a čas poslednej zmeny hesla je: " + $pwdchange
$strfile="C:\ps\" + $useremail + ".txt"
# Predpokladáme, že Outlook je spustený, ak nie, budete ho musieť spustiť príkazom $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
# Pripojte súbor (ak je to potrebné)
$email.Attachments.add($strfile)
#odoslať e-mailovú správu
$email.Send()
}
$ExcelWorkBook.close($true)
Tento skript PowerShell predpokladá, že na vašom počítači je spustený program Outlook. Skript vygeneruje predmet a telo e-mailu pre každú SMTP adresu príjemcu v súbore XLSX a pripojí súbor. Potom odošle e-mail.
Ste novým používateľom makier VBA pre automatizáciu Outlooku? Zistite, ako vložiť kód VBA do Outlooku 365/2016/2019.
Zistite, ako jednoducho duplikovať udalosti kalendára Outlooku, schôdze a plánované činnosti v Office 365, 2016 a 2019.
Zistite, ako môžete navrhnúť a vytvoriť vlastné používateľské formuláre programu Outlook.
Doručená pošta programu Outlook sa neaktualizuje automaticky? Zistite, ako môžete automaticky obnoviť doručenú poštu v Outlooku 365/2019/2016/2013.
Zistite, ako pridať/vložiť a odoslať obrázok gif do odchádzajúceho e-mailu z Outlooku 2016 a 2019.
Zistite, ako diagnostikovať a riešiť rôzne problémy s odpojením klienta Microsoft Outlook v systéme Windows 10.
Naučte sa písať makrá programu Outlook na automatizáciu odosielania e-mailov.
Zistite, ako zakázať pripomienky a upozornenia z kalendárov Outlooku 2016/2019 v systéme Windows aj MAC.
Zistite, ako zlepšiť výkon Outlooku.
Tento príspevok vám pomôže zmeniť heslo účtu Outlook.com a synchronizovať systém Windows na všetkých zariadeniach.