Denne opplæringen viser deg hvordan du sender e -post fra Excel via Gmail ved hjelp av VBA.
Legger til Microsoft CDO -referanse
For å la Excel sende e -post via Gmail må du først legge til CDO -referansebiblioteket i Excel -prosjektet.
Klikk på Verktøy, referanser i VBA Editor.
Søk etter Microsoft CDO -referansen, og klikk OK.
Sender en e -post via GMail
For å sende en e -post fra Excel via Gmail må du først deklarere et CDO -objekt (Dim gMail som CDO.Melding).
For det andre må du konfigurere SSL -autentisering for meldingen din i koden din. Dette betyr at du må angi SMTP -server og portdetaljer for at e -posten skal gå riktig gjennom, samt konfigurere brukernavn og passord.
I kodebiten nedenfor er dette det du trenger i begynnelsen av Excel -funksjonen. Du trenger en e -postmottaker (strTo) og et emne (strSubject), men CC og brødteksten i e -posten kan være valgfrie variabler.
12345678910111213141516171819202122232425262728 | Funksjon CreateEmail (strTo As String, strSubject As String, Valgfri strCC As String, Valgfri strBody As String)'opprett et CDO -objektDim gMail As CDO.MessageSett gMail = Ny CDO.Message'Aktiver SSL -autentiseringgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Sant'Gjør SMTP -godkjenning aktivert = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Angi SMTP -server og portdetaljergMail.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'Angi brukernavn og passord for din egen gmail -konto hergMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Oppdater konfigurasjonsfeltenegMail.Configuration.Fields.Update |
Når det er gjort, kan du opprette e -posten din og fullføre funksjonen.
123456789 | 'angi e -postegenskapene og filen som skal sendesWith gMail .Subject = "Skriv emne her".From = "[email protected]".To = strTo.TextBody = strBodySlutt med'for å sende e -postengMail.SendSluttfunksjon |
Du kan deretter ringe funksjonen din med følgende kode
1234567 | Send SendE -post'opprett e -postens brødtekstDim strText as stringstrText = "God morgen. Håper du har det bra - dette er en test -e -post"'fyll ut argumentene til funksjonen - la CC stå tom, så sett et komma som plassholderCreateEmail ("[email protected]", "Test Email",, strText)Slutt sub |
Sender en arbeidsbok via GMail
For å sende en arbeidsbok som et vedlegg via GMail, kan du opprette en funksjon omtrent som den ovenfor med noen få tillegg.
Du må legge til kode for å velge arbeidsboken, og deretter må du legge ved den valgte filen til e -posten.
Vi bruker Microsoft Office FileDialog kommandoen for å velge filen du vil sende, og bruk deretter Legg til vedlegg egenskapen til e -posten for å legge til filen som vedlegg.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | Funksjon SendWorkbook (strTo As String, strSubject As String, Valgfri strCC As String, Valgfri strBody As String) As BooleanVed feil, gå til eh:'opprett et CDO -objektDim gMail As CDO.MessageSett gMail = Ny CDO.Message'Aktiver SSL -autentiseringgMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = Sant'Gjør SMTP -godkjenning aktivert = true (1)gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1'Angi SMTP -server og portdetaljergMail.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'Angi brukernavn og passord for din egen gmail -konto hergMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendusername") = "[email protected]"gMail.Configuration.Fields.Item _("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "*********"'Oppdater konfigurasjonsfeltenegMail.Configuration.Fields.Update'velg filen du vil sende med dialogboksen Microsoft -filDim strFileToSend som strengDim dlgFile As FileDialogDim strItem As VariantDim nDlgResult så lengeSett dlgFile = Application.FileDialog (msoFileDialogFilePicker)'filter bare for excel- og csv -filerdlgFile.Filters.Legg til "Excel -filer", " *.csv; *.xls; *.xlsx; *.xlsm"nDlgResult = dlgFile.ShowHvis nDlgResult = -1 DaHvis dlgFile.SelectedItems.Count> 0 DaFor hvert strItem I dlgFile.SelectedItemsstrFileToSend = strItemNeste trinnSlutt omSlutt om'angi e -postegenskapene og filen som skal sendesMed gMail.Subject = "Skriv emne her".From = "[email protected]".To = strTo.TextBody = strBody'legg til den valgte filen som et vedlegg.AddAttachment strFileToSendSlutt med'for å sende e -postengMail.SendSendWorkbook = TrueAvslutt funksjoneh:SendWorkbook = FalskSluttfunksjon |
Hvis konfigurasjonsporten 25 ikke fungerer, kan du få en feilmelding - “Transporten klarte ikke å koble til serveren” Endre porten til 25 og prøv igjen.
Funksjonen ovenfor kan kalles ved hjelp av prosedyren nedenfor.
123456789101112131415 | Sub SendMail ()Dim strTo As StringDim strSubject As StringDim strBody As String'fylle variablerstrTo = "[email protected]"strSubject = "Finn finansfil vedlagt"strBody = "litt tekst går her for e -postens brødtekst"'ring funksjonen for å sende e -postenHvis SendWorkbook (strTo, strSubject,, strBody) = true daMsgbox "Suksess med oppretting av e -post"EllersMsgbox "Opprettelse av e -post mislyktes!"Slutt omSlutt Sub |
Du blir bedt om å velge filen du vil sende. Denne koden er begrenset til Excel -filer på grunn av at filteret er "*.csv; *.xls; *.xlsx; *.xlsm ” - men du kan også bruke denne koden i Word og endre filteret deretter.
Velg filen, og klikk på Åpne. Koden kan ta litt tid å kjøre - hvis du har sendt e -posten, får du følgende melding.