Jak psát užitečná makra ve zprávách aplikace Outlook 2016 a 2019?
Jste novým uživatelem maker VBA pro automatizaci aplikace Outlook? Přečtěte si, jak vložit kód VBA do Outlooku 365/2016/2019.
Aktualizováno: srpen 2021; Platí pro Microsoft Outlook 365/2019/2016
Zde je poznámka, kterou jsme dostali od čtenáře.
Děkujeme za vaši velmi užitečnou pomoc s kódováním aplikace Outlook. Zajímalo by mě, jestli můžete sdílet nějaký kód, který pomůže automatizovat odesílání e-mailů v aplikaci Outlook? Vím, že existuje několik způsobů, jak posílat opakující se zprávy, ale konkrétně mě zajímá použití VBA pro tento úkol.
děkuji za otázku. Zdá se, že automatické odesílání e-mailů patří mezi nejužitečnější a nejoblíbenější úkoly, které můžete automatizovat pomocí VBA. Přečtěte si další podrobnosti a jednoduchý skript, který vám pomůže začít zde.
Psaní VBA pro odesílání e-mailů aplikace Outlook
V poměrně jednoduchém příkladu níže pokryjeme následující kroky:
Zde je jednoduchý kód VBA pro automatické vytváření a odesílání jednoduchých e-mailů. Všimněte si, že tento skript můžete snadno vylepšit tak, aby zahrnoval přílohy souborů, úkoly atd., ale začněme velmi základním skriptem.
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
Zkratka makra aplikace Outlook VBA
Možná se budete chtít podívat na přidružení kódu VBA, který jste právě napsali, k příkazovému tlačítku v Outlooku. To vám umožní jej snadno spustit ze zástupce umístěného na pásu karet aplikace Outlook.
Postup:
Možné problémy s nastavením maker VBA
Aby bylo možné spouštět makra, může být nutné vyladit nastavení maker aplikace Outlook. Pokud ano, zde je návod, jak to udělat.
V PowerShellu můžete k odeslání e-mailu použít cmdlet Send-MailMessage . Vyžaduje však, abyste se ověřili na poštovním serveru, a nepodporuje moderní metody ověřování, jako je OAuth a Microsoft Modern Authentication. Odeslání e-mailu je tedy mnohem jednodušší, pokud máte v počítači nakonfigurovaný profil aplikace Outlook.
Zde je příklad PowerShell skriptu, který čte data ze souboru Excel a používá profil aplikace Outlook k odeslání e-mailu každý uživatel:
# otevřete soubor Excel
$ExcelObj = New-Object -comobject Excel.Application
$ExcelWorkBook = $ExcelObj.Workbooks.Open("C:\PS\user_list.xlsx")
$ExcelWorkSheet = $ExcelWorkBook.Sheets.Item("Sheet1")
# Získejte počet vyplněných řádků v souboru xlsx
$rowcount=$ExcelWorkSheet.UsedRange.Rows.Count
# Projděte všechny řádky ve sloupci 1, začněte od druhého řádku (tyto buňky obsahují uživatelská jména 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
# Generování textu zprávy
$strSubj = " Stav vašeho účtu na doméně woshub.com "
$strBody = "Vážený " + $FullUsername
$strBody = $strBody + " `r`n Váš účet v doméně woshub.com je v " + $Status
$strBody = $strBody + "`r`n Datum a čas poslední změny hesla je: " + $pwdchange
$strfile="C:\ps\" + $useremail + ".txt"
# Předpokládáme, že je spuštěný Outlook, pokud ne, budete jej muset spustit příkazem $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
# Připojte soubor (je-li to nutné)
$email.Attachments.add($strfile)
#odeslat e-mailovou zprávu
$email.Send()
}
$ExcelWorkBook.close($true)
Tento skript prostředí PowerShell předpokládá, že je na vašem počítači spuštěna aplikace Outlook. Skript vygeneruje předmět a tělo e-mailu pro každou SMTP adresu příjemce v souboru XLSX a soubor připojí. Poté odešle e-mail.
Jste novým uživatelem maker VBA pro automatizaci aplikace Outlook? Přečtěte si, jak vložit kód VBA do Outlooku 365/2016/2019.
Zjistěte, jak snadno duplikovat události kalendáře Outlooku, schůzky a schůzky v Office 365, 2016 a 2019.
Zjistěte, jak můžete navrhovat a vytvářet vlastní uživatelské formuláře aplikace Outlook.
Doručená pošta aplikace Outlook se neaktualizuje automaticky? Přečtěte si, jak můžete automaticky automaticky aktualizovat doručenou poštu Outlook 365 / 2019 / 2016 / 2013.
Přečtěte si, jak přidat/vložit a odeslat obrázek GIF do odchozího e-mailu z Outlooku 2016 a 2019.
Přečtěte si, jak diagnostikovat a řešit různé problémy s odpojením klienta Microsoft Outlook ve Windows 10.
Naučte se psát makra aplikace Outlook pro automatizaci odesílání e-mailů.
Přečtěte si, jak deaktivovat připomenutí a oznámení z kalendářů Outlook 2016 / 2019, a to jak na Windows, tak na MAC.
Přečtěte si, jak zlepšit výkon aplikace Outlook.
Tento příspěvek vám pomůže změnit heslo k účtu Outlook.com a udržovat synchronizaci systému Windows na všech vašich zařízeních.