VBA Posielajte e -maily z Excelu prostredníctvom Gmailu

Tento tutoriál vám ukáže, ako odosielať e -maily z Excelu prostredníctvom Gmailu pomocou VBA.

Pridanie referencie Microsoft CDO

Aby ste umožnili Excelu odosielať e -maily prostredníctvom Gmailu, musíte do svojho projektu Excel najskôr pridať referenčnú knižnicu CDO.

V editore VBA kliknite na Nástroje, Referencie.

Vyhľadajte Microsoft CDO Reference a kliknite na OK.

Odoslanie e -mailu prostredníctvom služby GMail

Na odoslanie e -mailu z Excelu prostredníctvom služby Gmail musíte najskôr deklarovať objekt CDO (Dim gMail ako CDO. Správa).

Za druhé, budete musieť vo svojom kóde nakonfigurovať autentifikáciu SSL pre vašu správu. To znamená, že musíte nastaviť server SMTP a podrobnosti o porte, aby váš e -mail správne prešiel, a tiež nastaviť používateľské meno a heslo.

V úryvku kódu nižšie to je to, čo by ste potrebovali na začiatku funkcie Excelu. Potrebujete príjemcu e -mailu (strTo) a predmet (strSubject), ale CC a telo e -mailu môžu byť voliteľné premenné.

12345678910111213141516171819202122232425262728 Funkcia CreateEmail (strTo ako reťazec, strSubject ako reťazec, voliteľné strCC ako reťazec, voliteľné strBody ako reťazec)'vytvorte objekt CDODim gMail As CDO.MessageNastaviť gMail = Nové CDO.Message„Povoliť autentifikáciu SSLgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Pravda„Nastaviť autentifikáciu SMTP ako povolenú = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Nastavte Podrobnosti o serveri SMTP a portegMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"gMail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25gMail.Configuration.Fields.Item _ ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2„Tu zadajte svoje používateľské meno a heslo pre svoj vlastný účet GmailgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Aktualizujte konfiguračné poliagMail.Configuration.Fields.Update

Akonáhle to urobíte, môžete vytvoriť svoj e -mail a dokončiť funkciu.

123456789 'nastavte vlastnosti e -mailu a súbor na odoslanieS gMail .Subject = "Sem napíšte predmet".From = "[email protected]".To = strTo.TextBody = strBodyUkončiť s'poslať poštugMail.SendKoncová funkcia

Potom môžete svoju funkciu zavolať pomocou nasledujúceho kódu

1234567 Sub SendEmail'vytvorte telo e -mailuDim strText ako reťazecstrText = "Dobré ráno. Dúfam, že sa máte dobre - toto je testovací e -mail"'vyplňte argumenty funkcie - ponechajte CC prázdne, preto zadajte čiarku ako zástupný znakCreateEmail ("[email protected]", "Testovací e -mail",, strText)Koniec pod

Odoslanie zošita prostredníctvom služby GMail

Ak chcete poslať zošit ako prílohu prostredníctvom služby GMail, môžete pomocou niekoľkých dodatkov vytvoriť funkciu, ktorá je veľmi podobná vyššie uvedenej.

Na výber zošita musíte pridať kód a potom musíte vybraný súbor priložiť k e -mailu.

Budeme používať Microsoft Office FileDialog vyberte súbor na odoslanie a potom použite príponu Pridať prílohu vlastnosť e -mailu pridať súbor ako prílohu.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 Funkcia SendWorkbook (strTo As String, strSubject As String, Optional strCC As String, Optional strBody As String) As BooleanPri chybe, áno,'vytvorte objekt CDODim gMail As CDO.MessageNastaviť gMail = Nové CDO.Message„Povoliť autentifikáciu SSLgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Pravda„Nastaviť autentifikáciu SMTP ako povolenú = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Nastavte Podrobnosti o serveri SMTP a portegMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2„Tu zadajte svoje používateľské meno a heslo pre svoj vlastný účet GmailgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Aktualizujte konfiguračné poliagMail.Configuration.Fields.Update'v dialógovom okne súboru Microsoft vyberte súbor, ktorý sa má odoslaťDim strFileToSend as StringDim dlgSúbor ako FileDialogDim strItem As VariantDim nDlgVýsledok ako dlhýNastaviť dlgFile = Application.FileDialog (msoFileDialogFilePicker)'filter iba pre súbory programu Excel a CSVdlgFile.Filters.Add "Excel Files", " *.csv; *.xls; *.xlsx; *.xlsm"nDlgResult = dlgFile.ShowAk nDlgResult = -1 PotomAk je dlgFile.SelectedItems.Count> 0 PotomPre každý bod položky v dlgFile.SelectedItemsstrFileToSend = strItemNasledujúca položka položkyKoniec AkKoniec Ak'nastavte vlastnosti e -mailu a súbor na odoslanieS gMail.Subject = "Sem napíšte predmet".From = "[email protected]".To = strTo.TextBody = strBody'pridať vybraný súbor ako prílohu.AddAttachment strFileToSendUkončiť s'poslať poštugMail.SendSendWorkbook = PravdaUkončiť funkciuaha:SendWorkbook = nepravdaKoncová funkcia

Ak konfiguračný port 25 nefunguje, môže sa zobraziť chyba - „Prenos sa nepodarilo pripojiť k serveru“ Zmeňte port na 25 a skúste to znova.

Vyššie uvedenú funkciu je možné vyvolať pomocou nižšie uvedeného postupu.

123456789101112131415 Sub odoslaná pošta ()Dim strTo As StringDim strSubject ako reťazecDim strBody As String"vyplňte premenné."strTo = "[email protected]"strSubject = "V prílohe nájdete finančný súbor"strBody = "Tu je nejaký text pre telo e -mailu"'zavolajte funkciu a pošlite e -mailAk je SendWorkbook (strTo, strSubject,, strBody) = true, potomMsgbox „Úspešné vytvorenie e -mailu“InakMsgbox "Vytvorenie e -mailu zlyhalo!"Koniec AkKoniec pod

Budete vyzvaní, aby ste vybrali súbor, ktorý chcete odoslať. Tento kód je obmedzený na súbory programu Excel, pretože filter je „*.csv; *.xls; *.xlsx; *.xlsm “ - tento kód však môžete použiť aj vo Worde a podľa toho zmeniť svoj filter.

Vyberte súbor a kliknite na položku Otvoriť. Spustenie kódu môže chvíľu trvať - ​​ak sa vám pošta úspešne odošle, zobrazí sa nasledujúca správa.

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave