Jak posílat e-maily z tabulky Excel pomocí skriptů VBA

  • Gabriel Brooks
  • 62
  • 4468
  • 651
reklama

Chcete-li odesílat e-maily z aplikace Microsoft Excel, vyžaduje pouze několik jednoduchých skriptů. Přidejte tuto funkci do svých tabulek a můžete skutečně zvýšit, čeho můžete v Excelu dosáhnout.

Pokryli jsme spoustu skvělých maker Excelu, která dokážou dosáhnout stejných věcí, jaké mohou mít skripty VBA, ale bez nutnosti znalosti programování. Existuje však mnoho pokročilých věcí, které můžete dělat pouze s VBA, jako je vytvoření tabulky s informacemi o vašem PC.

Chcete raději sledovat tento tutoriál jako video? Dostali jsme tě na sebe!

Proč odeslat e-mail z aplikace Excel?

Existuje mnoho důvodů, proč byste mohli chtít poslat e-mail z aplikace Microsoft Excel.

Možná máte zaměstnance, kteří aktualizují dokumenty nebo tabulky každý týden, a chcete dostávat upozornění e-mailem o dokončení těchto aktualizací. Nebo můžete mít tabulku kontaktů a chcete všem poslat jeden e-mail najednou.

Pravděpodobně si myslíte, že skriptování e-mailu vysílaného z aplikace Excel bude komplikované. To není vůbec případ.

Technika v tomto článku využije funkci, která byla k dispozici v aplikaci Excel VBA po dlouhou dobu, Datové objekty pro spolupráci (CDO).

CDO je součást pro zasílání zpráv používaná ve Windows od velmi raných generací OS. To se dříve nazývalo CDONTS a poté s nástupem Windows 2000 a XP bylo nahrazeno “CDO pro Windows 2000”. Tato součást je již součástí instalace VBA v aplikaci Microsoft Word nebo Excel a je připravena k použití.

Díky použití komponenty je odesílání e-mailů z produktů Windows s VBA velmi snadné. V tomto příkladu použijete součást CDO v Excelu k odeslání e-mailu, který doručí výsledky z konkrétní buňky Excel.

Krok 1: Vytvořte makro VBA

Prvním krokem je přechod na kartu Excel Developer.

Na kartě Vývojář klikněte na Vložit v poli Ovládací prvky a poté vyberte příkazové tlačítko.

Nakreslete jej do listu a poté vytvořte nové makro kliknutím na Makra v pásu karet pro vývojáře.

Když kliknete na ikonu Vytvořit , otevře se editor VBA.

Přejděte do knihovny CDO a přidejte odkaz Nástroje > Reference v editoru.

Přejděte seznamem dolů, dokud nenajdete Knihovna Microsoft CDO pro Windows 2000. Zaškrtněte políčko a klikněte na OK.

Když kliknete na OK, poznamenejte si název funkce, do které vkládáte skript. Budete to potřebovat později.

Krok 2: Nastavení CDO “Z” a “Na” Pole

Nejprve musíte vytvořit poštovní objekty a nastavit všechna pole, která jsou nezbytná pro odeslání e-mailu.

Mějte na paměti, že ačkoli mnoho polí je volitelných, Z a Na pole jsou povinná.

Dim CDO_Mail jako objekt Dim CDO_Config jako objekt Dim SMTP_Config jako varianta Dim strSubject jako String Dim strFrom jako String Dim strTo jako String Dim strCc jako String Dim strBcc jako String Dim strBody As String strSubject = "Výsledky z tabulky Excel" strFrom = "rdube02 @ gmail .com "strTo =" [email protected] "strCc =" "strBcc =" "strBody =" Celkové výsledky za tento čtvrtletí jsou: "& Str (Sheet1.Cells (2, 1))

Skvělá věc je, že si můžete vytvořit libovolný řetězec, který chcete přizpůsobit celou e-mailovou zprávu, a přiřadit ji k strBody proměnná.

Spojte komponenty zprávy pomocí & řetězec pro vložení dat z libovolného z listů aplikace Microsoft Excel přímo do e-mailové zprávy, stejně jako je uvedeno výše.

Krok 3: Nakonfigurujte CDO pro použití externího SMTP

Další část kódu je, kde nakonfigurujete CDO tak, aby k odesílání e-mailu používal jakýkoli externí server SMTP.

Tento příklad představuje nastavení jiné než SSL prostřednictvím Gmailu. CDO je schopné SSL, ale to je mimo rozsah tohoto článku. Pokud potřebujete použít SSL, může vám tento pokročilý kód v Githubu pomoci.

Set CDO_Mail = CreateObject ("CDO.Message") On Error GoTo Error_Handling Set CDO_Config = CreateObject ("CDO.Configuration") CDO_Config.Load -1 Set SMTP_Config = CDO_Config.Fields with SMTP_Config .Item ("Microsoft .com / cdo / configuration / sendusing ") = 2 .Item (" http://schemas.microsoft.com/cdo/configuration/smtpserver ") =" smtp.gmail.com ".Item (" http: // schemas .microsoft.com / cdo / configuration / smtpauthenticate ") = 1 .Item (" http://schemas.microsoft.com/cdo/configuration/sendusername ") =" [email protected] ".Item (" http: / /schemas.microsoft.com/cdo/configuration/sendpassword ") =" password ".Item (" http://schemas.microsoft.com/cdo/configuration/smtpserverport ") = 25 .Item (" http: // schemas .microsoft.com / cdo / configuration / smtpusessl ") = True .Update End With With CDO_Mail Set .Configuration = CDO_Config End With

Krok 4: Dokončete nastavení CDO

Nyní, když jste nakonfigurovali připojení k serveru SMTP pro odesílání e-mailů, stačí vyplnit příslušná pole pro Objekt CDO_Mail, a vydat Poslat příkaz.

Postupujte takto:

CDO_Mail.Subject = strSubject CDO_Mail.From = strFrom CDO_Mail.To = strTo CDO_Mail.TextBody = strBody CDO_Mail.CC = strCc CDO_Mail.BCC = strBcc CDO_Mail.Send Error_Handling: Err.DesBox "

Když se uchýlíte k použití poštovního objektu aplikace Outlook, nebudou existovat žádná vyskakovací okna ani zprávy s výstrahami zabezpečení.

CDO jednoduše sestaví e-mail a použije podrobnosti o připojení vašeho SMTP serveru k vypálení zprávy. Je to nejjednodušší způsob, jak začlenit e-mail do skriptů Microsoft Word nebo Excel VBA.

Chcete-li připojit příkazové tlačítko k tomuto skriptu, přejděte do editoru kódu a klikněte na List1 zobrazit kód VBA pro tento list.

Zadejte název funkce, do které jste vložili výše uvedený skript.

Zpráva vypadala takto, že jsem obdržel ve své doručené poště:

Poznámka: Pokud se zobrazí chyba, která čte Transport se nepodařilo připojit k serveru, ujistěte se, že jste do řádků kódu uvedených pod zadali správné uživatelské jméno, heslo, server SMTP a číslo portu S SMTP_Config.

Vezměte to dále a automatizujte celý proces

Všechno je dobré a dobré, když můžete stisknutím tlačítka odesílat e-maily z aplikace Excel. Možná však budete chtít tuto funkci používat pravidelně, v tom případě by mělo smysl automatizovat proces 5 Zdroje pro makra Excelu Automatizovat vaše tabulky 5 Zdroje pro makra Excelu pro automatizaci vašich tabulek Vyhledávání maker Excelu? Zde je pět stránek, které mají to, co hledáte. .

Chcete-li tak učinit, musíte provést makro. Zamiřte do editoru jazyka a zkopírujte a vložte celý kód, který jsme dali dohromady.

Dále vyberte ThisWorkbook z Projekt hierarchie.

Z obou rozbalovacích polí v horní části okna kódu vyberte pracovní sešit a vyberte otevřeno z rozevíracího seznamu Metody.

Vložte e-mailový skript výše do Soukromý dílčí sešit_Open ().

Makro se spustí při každém otevření souboru Excel.

Dále otevřete Plánovač úkolů.

Pomocí tohoto nástroje požádáte systém Windows o automatické otevírání tabulky v pravidelných intervalech, kdy bude spuštěno vaše makro a odeslání e-mailu.

Vybrat Vytvořit základní úkol… z Akce menu a projděte si průvodce, dokud se nedostanete na Akce obrazovka.

Vybrat Spusťte program a klikněte další.

Použijte Procházet tlačítko pro vyhledání umístění aplikace Microsoft Excel ve vašem počítači, nebo zkopírujte a vložte cestu do Program / skript pole.

Poté zadejte cestu k vašemu dokumentu Microsoft Excel Přidejte argumenty pole.

Dokončete průvodce a vaše plánování bude na místě.

Vyplatí se provést test naplánováním akce Jak automaticky vyprázdnit Koš v plánu a uvolnit zbytečný prostor Jak automaticky vyprázdnit Koš v plánu a uvolnit nevyužitý prostor Pokud nechcete pravidelně vyprázdňovat Koš Bin, mohlo by to ztrácet gigabajty místa na vaší datové jednotce. Nyní ji však Windows 10 může podle plánu automaticky vyprázdnit. na pár minut v budoucnu a poté úlohu upravte, jakmile potvrdíte, že funguje.

Poznámka: Možná bude nutné upravit nastavení Trust Center, aby se zajistilo správné fungování makra.

Chcete-li tak učinit, otevřete tabulku a přejděte na Soubor > Možnosti > Trust Center.

Odtud klikněte Nastavení centra důvěryhodnosti, a na další obrazovce přepněte přepínač do polohy Nikdy nezobrazovat informace o blokovaném obsahu.

Nechte Microsoft Excel pracovat za vás

Microsoft Excel je neuvěřitelně výkonný nástroj, ale naučit se, jak z něj vytěžit maximum, může být trochu zastrašující. Pokud chcete software skutečně ovládat, budete muset být s VBA spokojeni, a to není žádný malý úkol.

Výsledky však hovoří samy za sebe. S trochou zkušeností s VBA pod pásem budete mít brzy možnost zajistit, aby aplikace Microsoft Excel automaticky plnila základní úkoly, což vám poskytne více času na soustředění se na naléhavější záležitosti.

Získání odborných znalostí s VBA vyžaduje určitý čas, ale brzy uvidíte plody své práce, pokud se s tím budete moci držet.

Jedno skvělé místo, kde začít, je náš autoritativní návod k používání VBA v Excelu. Výukový program pro začátečníky o psaní maker VBA v Excelu (a proč byste se měli učit) Výukový program pro začátečníky o psaní maker VBA v Excelu (a proč byste se měli učit), pokud používáte Excel pravidelně se vyplatí naučit se vytvářet makra VBA a získat přístup k mnoha dalším funkcím a schopnostem. . Jakmile s tím budete hotovi, bude tento jednoduchý skript pro odesílání e-mailů z Excelu vypadat jako dětská hra.




nmibzobjxe ([email protected])
03.03.24 07:52
UneDose | Jak posílat e-maily z tabulky Excel pomocí skriptů VBA nmibzobjxe http://www.grvj54qn82u86871m7777w0q6xqiy1srs.org/ [url=http://www.grvj54qn82u86871m7777w0q6xqiy1srs.org/]unmibzobjxe[/url] <a href="http://www.grvj54qn82u86871m7777w0q6xqiy1srs.org/">anmibzobjxe</a>
iszpvoyxe ([email protected])
27.02.24 03:04
UneDose | Jak posílat e-maily z tabulky Excel pomocí skriptů VBA [url=http://www.g04316ui1hc85os62b3l6w70v4x8jplis.org/]uiszpvoyxe[/url] iszpvoyxe http://www.g04316ui1hc85os62b3l6w70v4x8jplis.org/ <a href="http://www.g04316ui1hc85os62b3l6w70v4x8jplis.org/">aiszpvoyxe</a>
xmjeeehyhs ([email protected])
19.01.24 16:49
UneDose | Jak posílat e-maily z tabulky Excel pomocí skriptů VBA <a href="http://www.g0sha95370opw195a38nntr8qu31k0a3s.org/">axmjeeehyhs</a> [url=http://www.g0sha95370opw195a38nntr8qu31k0a3s.org/]uxmjeeehyhs[/url] xmjeeehyhs http://www.g0sha95370opw195a38nntr8qu31k0a3s.org/
obswxygosj ([email protected])
08.11.23 14:53
UneDose | Jak posílat e-maily z tabulky Excel pomocí skriptů VBA <a href="http://www.g85i4jufo433eo16q2lx5732j1d66zdjs.org/">aobswxygosj</a> obswxygosj http://www.g85i4jufo433eo16q2lx5732j1d66zdjs.org/ [url=http://www.g85i4jufo433eo16q2lx5732j1d66zdjs.org/]uobswxygosj[/url]
xkpfkizbyc ([email protected])
26.09.23 09:03
UneDose | Jak posílat e-maily z tabulky Excel pomocí skriptů VBA <a href="http://www.g7qwlsoi6535o3gr3cx054s51he4r985s.org/">axkpfkizbyc</a> [url=http://www.g7qwlsoi6535o3gr3cx054s51he4r985s.org/]uxkpfkizbyc[/url] xkpfkizbyc http://www.g7qwlsoi6535o3gr3cx054s51he4r985s.org/
O moderní technologii, jednoduché a cenově dostupné.
Váš průvodce ve světě moderních technologií. Naučte se, jak používat technologie a pomůcky, které nás každý den obklopují, a naučte se, jak objevovat na internetu zajímavé věci.