V Microsoft Office používáme Visual Basic for Applications (VBA) k vytváření vlastních programů, které vylepšují základní funkce Office a pomáhají šetřit čas automatizací opakujících se úloh. Tyto malé programy VBA nazýváme makra .
V tomto tutoriálu jsme chtěli poskytnout nejúplnější webový zdroj pro vývoj maker pro aplikaci Outlook. Zaměříme se na prozkoumání základů Outlooku VBA pro začátečníky, naučíme se psát makra a poté se podíváme na některé pokročilejší užitečné nápady na makro. Na základě zpětné vazby, kterou jsme dostali, byste po prostudování tohoto tutoriálu měli být schopni vyvíjet a spouštět jednoduchá makra VBA pro aplikaci Outlook.
- Nejprve základy: Naučíme se, jak vložit a uložit jednoduché vlastní makro VBA do aktivní relace aplikace Outlook.
- Poté nastavíme vývojové prostředí maker v našem počítači.
- Projdeme si nejzákladnější příklady aplikace Outlook VBA. To vám pomůže pochopit základy vývoje maker a umožní vám psát jednoduchá makra.
- Dále budeme pokračovat a definovat ikonu zástupce pro naše makro na panelu nástrojů Rychlý přístup. To nám umožní snadno spustit makro.
- A zakončíme povolením maker aplikace Outlook a zpracováním jejich nastavení zabezpečení, abychom zajistili, že se kód po zobrazení výzvy v našich počítačích skutečně spustí.
Mohu zaznamenat makro Outlook?
Na rozdíl od jiných aplikací Office Outlook nenabízí jednoduchý záznam maker, který by zachycoval akce uživatelů a na pozadí nám automaticky generoval požadovaný kód VBA. Pokud tedy chceme do Outlooku přidat vlastní vlastní funkce, budeme se muset naučit psát jednoduché programy VBA a začlenit je do naší relace Outlooku.
Poznámka: Pokud vás zajímá, jak vlastně funguje záznamník maker Office, doporučil bych nahlédnout do výukových programů maker MS Word a Excel VBA Macro .
Psaní maker VBA v aplikaci Outlook
- Nejprve otevřete Microsoft Outlook.
- Nyní pokračujte a stiskněte tlačítko Alt + F11 .
- Otevře se vývojářské integrované vývojové prostředí VBA (IDE).
- Rozbalte strom projektu až do uzlu ThisOutlookSession .
- Klikněte pravým tlačítkem na ThisOutlookSession a poté stiskněte Vložit .
- Nyní vložíte modul Visual Basic. Chcete-li toho dosáhnout, pokračujte a vyberte Modul .
- Vložte svůj kód VBA do okna Modul .
- Klikněte na Soubor a poté vyberte Uložit .
- Pokračujte a zavřete vývojářské prostředí. Tím se vrátíte zpět do uživatelského rozhraní aplikace Outlook.
Poznámka: Přečtěte si několik jednoduchých příkladů kódu, které vám pomohou začít s VBA. Nikdy nekopírujte kód VBA z neznámých zdrojů.
Jak nastavit kartu vývojáře v aplikaci Outlook?
Pokud budete často vyvíjet makra aplikace Outlook, možná budete chtít nastavit vývojové prostředí Office. Zní to famózně, že? Ve skutečnosti je to docela jednoduchý postup. Přečtěte si podrobnosti:
- Otevřete Outlook , klikněte pravým tlačítkem na horní oblast pásu karet a vyberte možnost Přizpůsobit pás karet .

- Zkontrolujte položku Vývojář a stiskněte OK .

- Nyní na pásu karet najdete nabídku Vývojář.
Užitečné příklady aplikace Outlook VBA
Vytvořte e-mailovou zprávu
Tento jednoduchý úryvek programově vytvoří novou položku e-mailové zprávy.
Skript začíná vytvořením poštovní položky Outlooku, poté nastaví pole do, předmět, hlavní text a kopie. Nakonec zobrazí zprávu v aplikaci Outlook, abyste ji mohli zkontrolovat a odeslat ručně.
Public Sub CreateMail() Dim MyEmail As MailItem ' Create a new Outlook message item programatically Set MyEmail = Application.CreateItem(olMailItem) 'Set your new message to, subject, body text and cc fields. With MyEmail .To = "[email protected]" .Subject = "Insert your message subject here" .Body = "Insert your email text body here" .CC = "[email protected]" End With MyEmail.Display End Sub
Poznámka pro pokročilé: Při definování nových e-mailů pomocí jazyka VBA můžete použít předdefinované šablony aplikace Outlook. Chcete-li to provést, budete muset využít metodu CreateItemFromTemplate a určit umístění souboru šablony aplikace Outlook (*. oft ).
Pošlete e-mail programově
Pokud chcete, aby aplikace Outlook automaticky odeslala e-mail, který jste právě vytvořili, můžete do výše uvedeného kódu přidat následující řádek. Vložte následující řádek před příkaz End Sub předchozího fragmentu.
MyEmail.Send
Připojte soubor k e-mailu
V mnoha případech byste chtěli zautomatizovat odesílání e-mailu s připojeným souborem. Může to být dokument aplikace Word, tabulka Excel, prezentace v PowerPointu, dokumenty PDF atd. Pokud chcete poslat e-mail s přílohami programově, použijte tento kód:
#VBA Code Dim MyEmail As MailItem ' Create a new Outlook message item programatically Set MyEmail = Application.CreateItem(olMailItem) 'Define your attachment folder path and file name - modify this part as needed Dim AttachFolder, AttachFile As String AttachFolder = "C:\" AttachFile = "test.txt" 'Set your new message to, subject, body text and cc fields. With MyEmail .To = "recipient@my_server.com; mysecondrecipient@my_server.com" .Subject = "This is your message subject" .Body = "Insert your email text body here" .CC = "cc@my_server.com" .Attachments.Add AttachFolder & AttachFile End With MyEmail.Display End Sub
Poznámky:
- Ujistěte se, že jste ve úryvku nastavili správnou cestu a název souboru přílohy.
- V tomto příkladu jsem nastavil více příjemců e-mailu , prosím upravte podle potřeby.
Vytvořte úlohu pomocí VBA
Následující úryvek vytvoří úkol aplikace Outlook, přiřadí jej jiné osobě a nastaví předmět úkolu a hlavní text.
Public Sub CreateTask() Dim MyTask As TaskItem ' Create a new Outlook task Set MyTask = Application.CreateItem(olTaskItem) 'Set your new task recipients and information fields With MyTask .Assign .Recipients.Add "taskrecipient@my_server.com" .Subject = "This is your task subject" .Body = "Insert a thorough explanation of your task here." End With MyTask.Display End Sub
Uložit jako HTML
Jen málo čtenářů se zeptalo, jak automatizovat ukládání e-mailů do HTML. Níže uvedený kód přesně toto splňuje.
Public Sub SaveAsHTML() On Error Resume Next Dim MyWindow As Outlook.Inspector Dim MyItem As MailItem Dim FilePath As String FilePath = Environ("HOMEPATH") & "\Documents\" & "\" Dim ItemName As String Set MyWindow = Application.ActiveInspector If TypeName(MyWindow) = "Nothing" Then MsgBox ("Kindly open an email to save") Else Set MyItem = MyWindow.CurrentItem ItemName = MyItem.Subject ' File name will be identical to the message subject With MyItem .SaveAs FilePath & ItemName & ".html", olHTML End With End If End Sub
Poznámka: Ujistěte se, že tento kód spouštíte pouze u e-mailů, které jsou otevřené v aplikaci Outlook (nikoli v zobrazení Doručená pošta/Průzkumník).
Otázky týkající se maker aplikace Outlook
Kde jsou makra uložena v aplikaci Outlook?
Možná se potulujete, kde přesně je uloženo vaše použité makro. No, na rozdíl například od Excelu, který umožňuje ukládat makra do souboru personal.xlb nebo do konkrétních tabulek; všechna makra aplikace Microsoft Outlook jsou uložena v jednom globálním souboru ve vašem systému souborů. Konkrétně se soubor ukládající všechna vaše makra jmenuje VBAProject.otm. Soubor najdete na: C:\users\\AppData\Roaming\Microsoft\Outlook.
Tlačítko zástupce pro makra aplikace Outlook
Naším dalším krokem je vložení malého tlačítka, které nám umožní snadno spustit makro. Pro jednoduchost vložíme toto tlačítko na panel nástrojů Rychlý přístup.
- Otevřete Microsoft Outlook, pokud ještě není otevřen.
- Klikněte pravým tlačítkem na horní pás karet aplikace Outlook a vyberte možnost Přizpůsobit panel nástrojů Rychlý přístup .

Poznámka: Podobný postup můžete použít k umístění ikony na samotný pás karet namísto na panel nástrojů Rychlý přístup.
- Klepněte na rozbalovací seznam ' Vybrat příkazy z ' a vyberte Makra .

- Vyberte makro, které jste právě vytvořili, a stiskněte Přidat .

- Klepnutím na Upravit definujte vlastní obrázek ikony pro tlačítko panelu nástrojů Rychlý přístup.

- Až budete hotovi, stiskněte OK.
Jak povolit makro v aplikaci Outlook?
Tento krok je volitelný a měl by být proveden pouze v případě, že se při spouštění nově vytvořeného makra zobrazí chybová zpráva.
- Další je umožnit aplikaci Outlook spustit naše makro VBA. Ve výchozím nastavení Microsoft Office makra zakazuje a nepovoluje; takže budeme muset definovat správné zabezpečení maker, aby bylo možné spustit vlastní makro aplikace Outlook.
- V Outlooku 2016 klikněte na pásu karet na Vývojář a vyberte Zabezpečení maker .

- Vyberte nastavení zabezpečení maker.
- V Outlooku 2016: Vyberte Oznámení pouze pro digitálně podepsaná makra, všechna ostatní zakázána nebo Oznámení pro všechna makra .
- V Outlooku 2019: Vyberte Zakázat všechna makra s upozorněním . Před spuštěním makra se zobrazí upozornění vyžadující schválení uživatele.
- Po nastavení zabezpečení maker klepněte na OK .
Poznámka: Vaše aktuální nastavení zabezpečení může bránit spouštění maker v aplikaci Outlook. Zde je návod, jak postupovat, pokud jsou makra ve vašem projektu maker aplikace Outlook zakázána .
Jak používat makro aplikace Outlook?
V neposlední řadě je nyní čas spustit nově vytvořené makro.
- Přejděte na panel nástrojů Rychlý přístup (levá horní strana obrazovky – mírně nad nabídkou HOME).
- Klepněte na ikonu, kterou jste přiřadili svému makru.
- Voi'la, právě jste dokončili a spustili své (první) makro Outlook VBA!
Další nápady na makra aplikace Outlook
Několik našich čtenářů se zeptalo, zda bychom mohli specifikovat další nápady pro Outlook Automation. Zde je několik z nich, jak začít.
- Automaticky ukládat přílohy v příchozích zprávách do konkrétní složky.
- Přečtěte si seznam záznamů schůzek ze souboru CSV a automaticky vytvořte schůzky v jednom nebo více kalendářích.
- Automatické vytváření úkolů/schůzek/kontaktů z příchozích e-mailů.
- Vizualizujte stav odezvy účastníků na sadu opakujících se schůzek.
- Odesílejte e-maily Outlook z Excelu, Wordu nebo Accessu.
- Stáhněte si všechny přílohy z konkrétní složky aplikace Outlook do počítače. Pokud je místo na vašem účtu Outlook omezeno, můžete toto makro použít ke konkrétnímu stahování pouze velkých příloh (například přes 5 MB) na disk namísto jejich správy v aplikaci Outlook.
- Export kontaktů aplikace Outlook přímo do databáze aplikace Access. Všimněte si, že Export kontaktů do CSV je v produktu k dispozici.
- Automaticky aktualizovat informace o schůzce pro jednotlivé nebo opakující se schůzky.
Další kroky
Vytvoření zástupce pro vaše makro
Vytvořte si pro své makro zástupce, abyste k nim měli v budoucnu snadný přístup. Chcete-li vytvořit zkratku makra:
- Otevřete Panel nástrojů pro rychlý přístup v horní části aplikace Outlook.
- Klikněte na Další příkazy.
- V rozbalovací nabídce Vybrat příkazy z vyberte možnost Makra.
- Vyberte makro, které chcete použít jako zástupce, a klikněte na tlačítko Přidat .
- Klikněte na OK.
- Zástupce makra se zobrazí vedle panelu nástrojů Rychlý přístup.
Pokud někdy budete chtít tohoto zástupce z panelu nástrojů odstranit, jednoduše na něj klikněte pravým tlačítkem a vyberte možnost Odebrat z panelu nástrojů Rychlý přístup. a>
Zde je další způsob, jak najít svá stávající makra:
- Klikněte na kartu Vývojář .
- Klikněte na Makra.
- Vyberte makro, které chcete použít.
Jak upravit nastavení maker
Chcete-li změnit nebo upravit nastavení makra aplikace Outlook:
- Klikněte na kartu Vývojář .
- Klikněte na Zabezpečení maker.
Odtud máte možnost:
- Zakázat všechna makra bez upozornění
- Povolte oznámení pro digitálně podepsaná makra a zakažte všechna ostatní makra
- Zapněte oznámení pro všechna makra
- Povolit všechna makra (nedoporučuje se)
- Použijte nastavení zabezpečení maker na nainstalované doplňky