VBA E -mailek küldése az Excelből a Gmailben

Ez az oktatóanyag megmutatja, hogyan küldhet e -maileket az Excelből a Gmail segítségével a VBA segítségével.

A Microsoft CDO referencia hozzáadása

Ahhoz, hogy az Excel e -mailt küldhessen a Gmailben, először hozzá kell adnia a CDO referenciakönyvtárat az Excel -projekthez.

A VBA szerkesztőben kattintson az Eszközök, referenciák elemre.

Keresse meg a Microsoft CDO -referenciát, majd kattintson az OK gombra.

E -mail küldése GMail -en keresztül

Ha e -mailt szeretne küldeni az Excelből Gmail -en keresztül, először be kell jelentenie egy CDO -objektumot (Dim gMail mint CDO.Message).

Másodszor, konfigurálnia kell az üzenet SSL hitelesítését a kódjában. Ez azt jelenti, hogy be kell állítania az SMTP -kiszolgálót és a port részleteit, hogy az e -mailjei megfelelően menjenek keresztül, valamint be kell állítania felhasználónevét és jelszavát.

Az alábbi kódrészletben erre van szüksége az Excel funkció elején. Szüksége van egy e -mail címzettre (strTo) és egy tárgyra (strSubject), de a CC és az e -mail törzse opcionális változók.

12345678910111213141516171819202122232425262728 Funkció CreateEmail (strTo As String, strSubject As String, Opcionális strCC String, Opcionális strBody As String)'hozzon létre egy CDO objektumotDim gMail CDO.Message névenSet gMail = New CDO.Message'Engedélyezze az SSL hitelesítéstgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Igaz'SMTP hitelesítés engedélyezése = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Állítsa be az SMTP szerver és a port részleteitgMail.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") = 2Itt állítsa be felhasználónevét és jelszavát saját gmail fiókjáhozgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Frissítse a konfigurációs mezőketgMail.Configuration.Fields.Frissítés

Ha ez megtörtént, létrehozhatja e -mail címét, és befejezheti a funkciót.

123456789 'állítsa be az e -mail tulajdonságait és a küldendő fájltA gMail .Subject = "Tárgy ide írása" segítségével.From = "[email protected]".To = strTo.TextBody = strBodyVége ezzel'küldeni a leveletgMail.KüldésVége funkció

Ezután hívhatja funkcióját a következő kóddal

1234567 Sub SendEmail'hozza létre az e -mail törzsétDim strText karakterlánckéntstrText = "Jó reggelt. Remélem jól vagy - ez egy teszt e -mail"'töltse ki a függvény argumentumait - hagyja üresen a CC -t, és tegyen vesszőt helyőrzőkéntCreateEmail ("[email protected]", "Teszt e -mail",, strText)Vége al

Munkafüzet küldése GMail -en keresztül

Ha egy munkafüzetet mellékletként szeretne elküldeni a GMail -en keresztül, létrehozhat egy, a fentihez hasonló funkciót néhány kiegészítéssel.

A munkafüzet kiválasztásához kódot kell hozzáadnia, majd csatolnia kell a kiválasztott fájlt az e -mailhez.

Mi a Microsoft Office -t fogjuk használni FileDialog paranccsal válassza ki a küldeni kívánt fájlt, majd használja a AddAttachment az e -mail tulajdonsága, hogy csatolja a fájlt.

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 Funkció SendWorkbook (strTo As String, strSubject As String, Opcionális strCC String, Opcionális strBody As String) BooleanHiba történt:'hozzon létre egy CDO objektumotDim gMail CDO.Message névenSet gMail = New CDO.Message'Engedélyezze az SSL hitelesítéstgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Igaz'SMTP hitelesítés engedélyezése = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Állítsa be az SMTP szerver és a port részleteitgMail.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") = 2Itt állítsa be felhasználónevét és jelszavát saját gmail fiókjáhozgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Frissítse a konfigurációs mezőketgMail.Configuration.Fields.Frissítés'válassza ki a küldeni kívánt fájlt a Microsoft fájl párbeszédpanelenA strFileToSend karakterlánc halványításaDim dlgFile FileDialog névenDim strItem mint változatDim nDlgResult As LongÁllítsa be a dlgFile = Application.FileDialog (msoFileDialogFilePicker)'szűrő csak excel és csv fájlokhozdlgFile.Filters.Ad "Excel fájlok", " *.csv; *.xls; *.xlsx; *.xlsm"nDlgResult = dlgFile.ShowHa nDlgResult = -1 AkkorHa dlgFile.SelectedItems.Count> 0 AkkorMinden strItem -hez a dlgFile.SelectedItems -banstrFileToSend = strItemKövetkező strItemVége HaVége Ha'állítsa be az e -mail tulajdonságait és a küldendő fájltA gMail segítségével.Subject = "Írja ide a témát".From = "[email protected]".To = strTo.TextBody = strBody'add hozzá a kiválasztott fájlt mellékletként.AddAttachment strFileToSendVége ezzel'küldeni a leveletgMail.KüldésSendWorkbook = IgazKilépés funkcióeh:SendWorkbook = HamisVége funkció

Ha a 25 -ös konfigurációs port nem működik, akkor hibaüzenetet kaphat - „A szállítás nem tudott csatlakozni a szerverhez” Cserélje ki a portot 25 -re, és próbálja újra.

A fenti funkció az alábbi eljárással hívható meg.

123456789101112131415 Sub SendMail ()Dim strTo Mint karakterláncDim strSubject karakterlánckéntDim strBody mint karakterlánc'töltse ki a változókatstrTo = "[email protected]"strSubject = "Kérjük, csatolja a pénzügyi fájlt"strBody = "néhány szöveg ide kerül az e -mail törzséhez"'hívja a funkciót az e -mail elküldéséhezHa a SendWorkbook (strTo, strSubject,, strBody) = igaz akkorMsgbox "Sikeres e -mail létrehozás"MásMsgbox "Az e -mail létrehozása sikertelen!"Vége, haEnd Sub

A rendszer kéri, hogy válassza ki a küldeni kívánt fájlt. Ez a kód az Excel fájlokra korlátozódik, mivel a szűrő „*.csv; *.xls; *.xlsx; *.xlsm ” - ezt a kódot azonban a Wordben is használhatja, és ennek megfelelően módosíthatja a szűrőt.

Válassza ki a fájlt, majd kattintson a Megnyitás gombra. A kód futtatása eltarthat - ha a leveleket sikeresen elküldte, akkor a következő üzenetet kapja.

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave