Ako odosielať e -maily z tabuľky programu Excel pomocou skriptov VBA

Ako odosielať e -maily z tabuľky programu Excel pomocou skriptov VBA

Odosielanie e -mailov z programu Microsoft Excel vyžaduje iba niekoľko jednoduchých skriptov. Pridajte si túto funkciu do svojich tabuliek a môžete skutočne zvýšiť výkon, ktorý môžete v programe Excel dosiahnuť.





Pokryli sme mnoho skvelých makier Excelu, ktoré dokážu dosiahnuť to isté, čo skripty VBA, ale bez znalosti programovania. Existuje však mnoho pokročilých vecí, ktoré môžete robiť iba s VBA, napríklad vytváranie tabuľkových správ so všetkými informáciami o počítači.





Chcete tento návod radšej sledovať ako video? Postaráme sa o vás!





Prečo odosielať e -maily z Excelu?

Existuje mnoho dôvodov, prečo by ste mohli chcieť odoslať e -mail z vnútra programu Microsoft Excel.

Možno máte zamestnancov, ktorí týždenne aktualizujú dokumenty alebo tabuľky, a chceli by ste dostať e -mailové upozornenie na dokončenie týchto aktualizácií. Alebo máte tabuľku kontaktov a chcete všetkým odoslať jeden e -mail naraz.



Pravdepodobne si myslíte, že skriptovanie vysielania e -mailov z programu Excel bude komplikované. Vôbec to tak nie je.

Technika v tomto článku využije funkciu, ktorá je v programe Excel VBA k dispozícii už nejaký čas, Objekty spolupráce údajov (CDO).





CDO je súčasť na odosielanie správ používaná v systéme Windows od veľmi raných generácií operačného systému. Hovorilo sa mu CDONTS a potom s príchodom Windows 2000 a XP bol nahradený výrazom „CDO pre Windows 2000“. Tento komponent je už zahrnutý vo vašej inštalácii VBA v programe Microsoft Word alebo Excel a je pripravený na použitie.

Vďaka použitiu tohto komponentu je odosielanie e -mailov z produktov Windows s VBA veľmi jednoduché. V tomto prípade použijete komponent CDO v programe Excel na odoslanie e -mailu, ktorý dodá výsledky z konkrétnej bunky programu Excel.





Krok 1: Vytvorte makro VBA

Prvým krokom je prejsť na kartu Vývojár programu Excel.

Na karte Vývojár kliknite na Vložiť v poli Ovládacie prvky a potom vyberte príkazové tlačidlo.

Nakreslite ho do listu a potom preň vytvorte nové makro kliknutím na Makrá na páse s nástrojmi pre vývojárov.

Keď kliknete na Vytvoriť tlačidlo, otvorí sa editor VBA.

Pridajte odkaz na knižnicu CDO tak, že prejdete na Nástroje > Referencie v editore.

Posúvajte zoznam nadol, kým nenájdete Knižnica Microsoft CDO pre Windows 2000 . Začiarknite políčko a kliknite na OK .

Keď kliknete OK , poznačte si názov funkcie, do ktorej vkladáte skript. Budete to potrebovať neskôr.

Krok 2: Nastavte polia CDO „Od“ a „Do“

Na to musíte najskôr vytvoriť poštové objekty a nastaviť všetky polia potrebné na odoslanie e -mailu.

Majte na pamäti, že hoci mnohé z polí sú voliteľné, Od a Komu polia sú povinné.

video dxgkrnl fatal_error windows 10
Dim CDO_Mail As Object
Dim CDO_Config As Object
Dim SMTP_Config As Variant
Dim strSubject As String
Dim strFrom As String
Dim strTo As String
Dim strCc As String
Dim strBcc As String
Dim strBody As String
strSubject = 'Results from Excel Spreadsheet'
strFrom = 'rdube02@gmail.com'
strTo = 'rdube02@gmail.com'
strCc = ''
strBcc = ''
strBody = 'The total results for this quarter are: ' & Str(Sheet1.Cells(2, 1))

Skvelé na tom je, že môžete vytvoriť ľubovoľný reťazec, ktorému chcete prispôsobiť celú e -mailovú správu, a priradiť ju k súboru strBody premenná.

Spojte komponenty správy pomocou & reťazec na vloženie údajov z ľubovoľného listu programu Microsoft Excel priamo do e -mailovej správy, ako je uvedené vyššie.

Krok 3: Konfigurujte CDO na používanie externého SMTP

V ďalšej časti kódu nakonfigurujete CDO na používanie akéhokoľvek externého servera SMTP na odosielanie e -mailov.

V tomto prípade ide o nastavenie, ktoré nie je založené na SSL prostredníctvom služby Gmail. CDO je schopné SSL, ale to je mimo rozsahu tohto článku. Ak potrebujete použiť SSL, toto pokročilý kód v Githube môžem pomôcť.

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('http://schemas.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@website.com'
.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čite nastavenie CDO

Teraz, keď ste nakonfigurovali pripojenie na server SMTP na odosielanie e -mailov, stačí vyplniť príslušné polia pre Objekt CDO_Mail , a vydajte súbor Odoslať príkaz.

Postup je nasledujúci:

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:
If Err.Description '' Then MsgBox Err.Description

Nebudú sa zobrazovať žiadne kontextové okná ani výstražné správy o zabezpečení, čo sa môže stať, keď sa uchýlite k použitiu poštového objektu programu Outlook.

CDO jednoducho zostaví e -mail a na odoslanie správy použije podrobnosti o vašom pripojení k serveru SMTP. Je to najľahší spôsob, ako začleniť e -mail do skriptov Microsoft Word alebo Excel VBA.

Ak chcete pripojiť príkazové tlačidlo k tomuto skriptu, prejdite do editora kódu a kliknite na List 1 na zobrazenie kódu VBA pre tento pracovný list.

Zadajte názov funkcie, do ktorej ste prilepili skript vyššie.

táto osoba sa pokúsila odomknúť váš telefón

Takto vyzerala správa, ktorú som dostal do svojej doručenej pošty:

Poznámka : Ak sa zobrazí chybová správa Prenosu sa nepodarilo pripojiť k serveru , uistite sa, že ste zadali správne používateľské meno, heslo, server SMTP a číslo portu do riadkov kódu uvedených nižšie S konfiguráciou SMTP_Config .

Choďte ďalej a zautomatizujte celý proces

Je to dobré a dobré, že môžete odosielať e -maily z Excelu jediným stlačením tlačidla. Možno však budete chcieť túto funkciu používať pravidelne, v takom prípade by malo zmysel automatizovať proces.

Ak to chcete urobiť, musíte zmeniť makro. Prejdite do editora jazyka Visual Basic a skopírujte a prilepte celý kód, ktorý sme zostavili.

Ďalej vyberte Táto pracovná kniha z Projekt hierarchia.

Z dvoch rozbaľovacích polí v hornej časti okna kódu vyberte Pracovný zošit a vyberte Otvorené z rozbaľovacieho zoznamu Metódy.

Vložte skript e -mailu vyššie do Súkromný čiastkový zošit_Otvorený () .

Makro sa spustí vždy, keď otvoríte súbor programu Excel.

Ďalej otvorte Plánovač úloh .

Tento nástroj použijete na požiadanie systému Windows, aby v pravidelných intervaloch automaticky otváral tabuľku. V tomto okamihu sa spustí makro a odošle sa e -mail.

Vyberte Vytvoriť základnú úlohu ... z Akcia ponuky a prepracujte sa cez sprievodcu, kým sa nedostanete na Akcia obrazovka.

Vyberte Spustite program a klikni Ďalšie .

Použi Prehliadať pomocou tlačidla vyhľadajte umiestnenie programu Microsoft Excel vo svojom počítači alebo skopírujte a prilepte cestu do súboru Program/skript lúka.

Potom zadajte cestu k dokumentu programu Microsoft Excel do súboru Pridajte argumenty lúka.

Dokončite sprievodcu a vaše plánovanie bude na mieste.

Stojí za to vykonať test, naplánovať akciu na niekoľko minút v budúcnosti a potom úlohu zmeniť, akonáhle potvrdíte, že funguje.

Poznámka : Možno budete musieť upraviť nastavenia Centra dôveryhodnosti, aby ste zaistili správne fungovanie makra.

Ak to chcete urobiť, otvorte tabuľku a prejdite na Súbor > možnosti > Centrum dôvery .

Odtiaľ kliknite Nastavenia centra dôveryhodnosti , a na ďalšej obrazovke nastavte prepínač rádia na Nikdy nezobrazovať informácie o zablokovanom obsahu .

Nechajte program Microsoft Excel pracovať pre vás

Microsoft Excel je neuveriteľne účinný nástroj, ale naučiť sa, ako z neho vyťažiť maximum, môže byť trochu zastrašujúce. Ak chcete skutočne ovládať softvér, musíte ním byť pohodlné s VBA , a to nie je malá úloha.

ako odstrániť ios 13 beta bez počítača

Výsledky však hovoria samy za seba. S trochou skúseností s VBA budete mať čoskoro možnosť prinútiť program Microsoft Excel automaticky vykonávať základné úlohy, čo vám poskytne viac času na sústredenie sa na naliehavejšie záležitosti.

Vybudovanie si odborných znalostí s VBA vyžaduje určitý čas, ale čoskoro uvidíte ovocie svojej práce, ak sa ho dokážete držať.

Jedno skvelé miesto, kde začať, je náš smerodajný dokument návod na používanie VBA v programe Excel . Keď s tým skončíte, tento jednoduchý skript na odosielanie e -mailov z Excelu sa bude cítiť ako detská hra.

zdieľam zdieľam Tweet E -mail Canon vs. Nikon: Ktorá značka fotoaparátu je lepšia?

Canon a Nikon sú dve najväčšie mená v kamerovom priemysle. Ale ktorá značka ponúka lepšiu radu fotoaparátov a objektívov?

Čítajte ďalej
Súvisiace témy
  • Produktivita
  • Programovanie
  • E -mailové tipy
  • Programovanie
  • Programovanie v jazyku Visual Basic
  • Microsoft Excel
  • Tipy pre Microsoft Office
O autorovi Ryan Dube(942 publikovaných článkov)

Ryan má bakalársky titul z elektrotechniky. Pracoval 13 rokov v automatizačnom inžinierstve, 5 rokov v IT a teraz je Apps Engineer. Bývalý vedúci redaktor MakeUseOf vystupoval na národných konferenciách o vizualizácii údajov a bol vystupovaný v národnej televízii a rozhlase.

Viac od Ryana Dubeho

prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu a získajte technické tipy, recenzie, bezplatné elektronické knihy a exkluzívne ponuky!

Kliknutím sem sa prihlásite na odber