VBA Saatke e -kirju Excelist Gmaili kaudu

See õpetus näitab teile, kuidas saata Excelist e -kirju Gmaili kaudu VBA abil.

Microsofti CDO viite lisamine

Selleks, et Excel saaks Gmaili kaudu meilisõnumeid saata, peate esmalt lisama oma Exceli projekti CDO teatmeteegi.

Klõpsake VBA redaktoris nuppu Tööriistad, viited.

Otsige üles Microsofti CDO viide ja klõpsake nuppu OK.

E -kirja saatmine GMaili kaudu

Gmaili kaudu Excelist e -kirja saatmiseks peate esmalt deklareerima CDO -objekti (Dim gMail kui CDO. Sõnum).

Teiseks peate oma koodis oleva sõnumi jaoks konfigureerima SSL -autentimise. See tähendab, et e -posti korrektseks läbimiseks, samuti kasutajanime ja parooli seadistamiseks peate seadistama SMTP -serveri ja pordi üksikasjad.

Allolevas koodilõigus on see, mida vajate oma Exceli funktsiooni alguses. Teil on vaja e -posti adressaati (strTo) ja teemat (strSubject), kuid e -kirja koopia ja sisu võivad olla valikulised muutujad.

12345678910111213141516171819202122232425262728 Funktsioon CreateEmail (strTo kui string, strSubject kui string, valikuline strCC kui string, valikuline strBody kui string)"luua CDO -objektDim gMail CDO -sõnuminaMäära gMail = Uus CDO.Message'Luba SSL -autentiminegMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Tõsi'SMTP autentimise lubamine = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Määrake SMTP -serveri ja pordi üksikasjadgMail.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") = 2Siin saate oma gmaili konto jaoks määrata oma kasutajanime ja parooligMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Värskendage konfiguratsiooniväljugMail.Configuration.Fields.Update

Kui see on tehtud, saate oma e -posti luua ja funktsiooni täita.

123456789 "määrake e -posti atribuudid ja saadetav failGMail .Subject = "Kirjutage teema siia".From = "[email protected]".To = strTo.TextBody = strBodyLõpeta'posti saatmiseksgMail. SaadaLõppfunktsioon

Seejärel saate oma funktsioonile helistada järgmise koodiga

1234567 Sub SendEmail"looge e -kirja sisuHämarda strText stringinastrText = "Tere hommikust. Loodetavasti läheb teil hästi - see on testmeil"'täitke funktsiooni argumendid - jätke CC tühjaks, nii et pange kohatäiteks komaCreateEmail ("[email protected]", "Test -e -post", strText)Lõpp alam

Töövihiku saatmine GMaili kaudu

Töövihiku saatmiseks manusena GMaili kaudu saate luua mõne ülaltoodud funktsiooniga sarnase funktsiooni.

Töövihiku valimiseks peate lisama koodi ja seejärel lisama valitud faili e -kirjale.

Kasutame Microsoft Office'i FileDialog käsku, et valida saadetav fail ja seejärel kasutada AddAttachment e -posti atribuut faili lisamiseks manusena.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 Funktsioon SendWorkbook (strTo kui string, strSubject kui string, valikuline strCC kui string, valikuline strBody kui string) kui BooleanTõrke korral läks:"luua CDO -objektDim gMail CDO -sõnuminaMäära gMail = Uus CDO.Message'Luba SSL -autentiminegMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Tõsi'SMTP autentimise lubamine = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Määrake SMTP -serveri ja pordi üksikasjadgMail.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") = 2Siin saate oma gmaili konto jaoks määrata oma kasutajanime ja parooligMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Värskendage konfiguratsiooniväljugMail.Configuration.Fields.Update'valige Microsofti faili dialoogiboksi abil saadetav failDim strFileToSend stringinaDim dlgFile kui FileDialogDim strItem VariandinaDim nDlgResult As LongMäära dlgFile = Application.FileDialog (msoFileDialogFilePicker)"filter ainult Exceli ja csv -failide jaoksdlgFile.Filters.Add "Exceli failid", " *.csv; *.xls; *.xlsx; *.xlsm"nDlgResult = dlgFile.ShowKui nDlgResult = -1 SiisKui dlgFile.SelectedItems.Count> 0 SiisIga strItem jaoks dlgFile.SelectedItemsstrFileToSend = strItemJärgmine strItemLõpp KuiLõpp Kui"määrake e -posti atribuudid ja saadetav failGMailiga.Subject = "Kirjutage teema siia".From = "[email protected]".To = strTo.TextBody = strBody'lisage valitud fail manusena.AddAttachment strFileToSendLõpeta'posti saatmiseksgMail. SaadaSendWorkbook = TõsiVälju funktsiooneh:SendWorkbook = ValeLõppfunktsioon

Kui konfiguratsiooniport 25 ei tööta, võite saada tõrke - „Transpordil ei õnnestunud serveriga ühendust luua” Muutke port 25 -ks ja proovige uuesti.

Ülaltoodud funktsiooni saab kutsuda alltoodud protseduuri abil.

123456789101112131415 Sub SendMail ()Hämarda stringinaDim strSubject kui stringDim strBody kui string'täitke muutujadstrTo = "[email protected]"strSubject = "Finantsfail on manuses"strBody = "mõni tekst läheb siia e -kirja sisu jaoks"'helistage e -kirja saatmiseks sellele funktsioonileKui SendWorkbook (strTo, strSubject,, strBody) = true siisSõnumikast "E -posti loomise õnnestumine"MuiduMsgbox "E -posti loomine ebaõnnestus!"Lõpetage, kuiEnd Sub

Teil palutakse valida fail, mida soovite saata. See kood on piiratud Exceli failidega, kuna filter on “*.csv; *.xls; *.xlsx; *.xlsm ” - saate seda koodi siiski kasutada ka Wordis ja oma filtrit vastavalt muuta.

Valige fail ja klõpsake nuppu Ava. Koodi käivitamine võib võtta aega - kui teie kirjade saatmine õnnestus, kuvatakse teile järgmine teade.

wave wave wave wave wave