Kā nosūtīt e -pastus no Excel izklājlapas, izmantojot VBA skriptus

Kā nosūtīt e -pastus no Excel izklājlapas, izmantojot VBA skriptus

Lai nosūtītu e -pastus no Microsoft Excel, nepieciešami tikai daži vienkārši skripti. Pievienojiet šo funkcionalitāti savām izklājlapām, un jūs patiešām varat uzlabot, cik daudz jūs varat paveikt programmā Excel.





Mēs esam apskatījuši daudz lielisku Excel makro, ar kuriem var paveikt to pašu, ko VBA skripti, bet bez nepieciešamības pēc programmēšanas zināšanām. Bet ir daudzas papildu lietas, ko varat darīt tikai ar VBA, piemēram, izklājlapas pārskata izveide ar visu datora informāciju.





Vai vēlaties skatīties šo pamācību kā video? Mēs esam jūs aizklājuši!





Kāpēc sūtīt e -pastu no Excel?

Ir daudz iemeslu, kāpēc jūs varētu vēlēties sūtīt e -pastu no Microsoft Excel.

Varbūt jums ir darbinieki, kas katru nedēļu atjaunina dokumentus vai izklājlapas, un jūs vēlaties saņemt e -pasta paziņojumu par šo atjauninājumu pabeigšanu. Vai arī jums ir kontaktpersonu izklājlapa un vēlaties nosūtīt vienu e -pasta ziņojumu visiem vienlaikus.



Jūs droši vien domājat, ka e -pasta apraides skriptu rakstīšana no Excel būs sarežģīta. Tas tā nav.

Šajā rakstā izmantotais paņēmiens izmantos līdzekli, kas Excel VBA ir pieejams jau ilgu laiku, Sadarbības datu objekti (CDO).





CDO ir ziņojumapmaiņas komponents, ko operētājsistēmā Windows izmanto kopš ļoti agrīnām OS paaudzēm. Agrāk to sauca par CDONTS, un līdz ar Windows 2000 un XP parādīšanos tas tika aizstāts ar “CDO Windows 2000”. Šis komponents jau ir iekļauts jūsu VBA instalācijā programmā Microsoft Word vai Excel un ir gatavs lietošanai.

Izmantojot komponentu, e -pasta sūtīšana no Windows produktiem ar VBA ir ļoti vienkārša. Šajā piemērā jūs izmantosit CDO komponentu programmā Excel, lai nosūtītu e -pastu, kurā tiks sniegti rezultāti no konkrētas Excel šūnas.





1. darbība: izveidojiet VBA makro

Pirmais solis ir doties uz cilni Excel izstrādātājs.

Cilnē Izstrādātājs noklikšķiniet uz Ievietot lodziņā Vadīklas un pēc tam atlasiet komandu pogu.

Ievelciet to lapā un pēc tam izveidojiet tai jaunu makro, noklikšķinot uz Makro izstrādātāja lentē.

Noklikšķinot uz Izveidot pogu, tiks atvērts VBA redaktors.

Pievienojiet atsauci CDO bibliotēkai, pārejot uz Rīki > Atsauces redaktorā.

Ritiniet sarakstu uz leju, līdz atrodat Microsoft CDO Windows 2000 bibliotēkai . Atzīmējiet izvēles rūtiņu un noklikšķiniet labi .

Kad noklikšķināt labi , pierakstiet tās funkcijas nosaukumu, kurā ielīmējat skriptu. Jums tas būs vajadzīgs vēlāk.

2. darbība: iestatiet CDO laukus “No” un “Uz”

Lai to izdarītu, vispirms jāizveido pasta objekti un jāiestata visi lauki, kas nepieciešami e -pasta nosūtīšanai.

Paturiet prātā, ka, lai gan daudzi lauki nav obligāti, No un Uz lauki ir obligāti.

kā iestatīt virtuālo mašīnu
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))

Foršākais ir tas, ka jūs varat izveidot jebkuru virkni, kuru vēlaties pielāgot pilnam e -pasta ziņojumam, un piešķirt to strBody mainīgais.

Salieciet ziņojuma komponentus, izmantojot & virkne, lai ievietotu datus no jebkuras Microsoft Excel lapas tieši e -pasta ziņojumā, tāpat kā parādīts iepriekš.

3. darbība: konfigurējiet CDO, lai tas izmantotu ārēju SMTP

Nākamajā koda sadaļā jūs konfigurēsit CDO, lai e -pasta nosūtīšanai izmantotu jebkuru ārēju SMTP serveri.

Šis piemērs ir iestatījums, kas nav SSL, izmantojot Gmail. CDO var izmantot SSL, taču tas neietilpst šī raksta darbības jomā. Ja jums ir jāizmanto SSL, tas uzlabots kods Github var palīdzēt.

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

4. solis: pabeidziet CDO iestatīšanu

Tagad, kad esat konfigurējis savienojumu ar SMTP serveri e -pasta nosūtīšanai, viss, kas jums jādara, ir aizpildīt atbilstošos laukus CDO_Mail objekts , un izdod Sūtīt komandu.

Lūk, kā jūs to darāt:

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

Nebūs uznirstošo lodziņu vai drošības brīdinājumu ziņojumu, kas var notikt, izmantojot Outlook pasta objektu.

CDO vienkārši apkopo e -pastu un izmanto jūsu SMTP servera savienojuma informāciju, lai aktivizētu ziņojumu. Tas ir vienkāršākais veids, kā iekļaut e -pastu Microsoft Word vai Excel VBA skriptos.

Lai savienotu komandu pogu ar šo skriptu, dodieties uz koda redaktoru un noklikšķiniet uz 1. lapa lai apskatītu šīs darblapas VBA kodu.

Ierakstiet tās funkcijas nosaukumu, kurā iepriekš ielīmējāt skriptu.

kā sinhronizēt savus e -pasta kontus

Lūk, kā izskatījās ziņa, ko saņēmu savā iesūtnē:

Piezīme : Ja tiek parādīts kļūdas ziņojums Transportam neizdevās izveidot savienojumu ar serveri , pārliecinieties, vai zemāk norādītajās koda rindās esat ievadījis pareizu lietotājvārdu, paroli, SMTP serveri un porta numuru Ar SMTP_Config .

Turpiniet to un automatizējiet visu procesu

Viss ir labi, ja var nosūtīt e -pastu no programmas Excel, nospiežot vienu pogu. Tomēr, iespējams, vēlēsities izmantot šo funkcionalitāti regulāri, tādā gadījumā būtu jēga procesu automatizēt.

Lai to izdarītu, makro ir jāmaina. Dodieties uz Visual Basic redaktoru un nokopējiet un ielīmējiet visu mūsu apkopoto kodu.

Tālāk izvēlieties Šī darba grāmata no Projekts hierarhija.

Divos nolaižamajos laukos koda loga augšdaļā atlasiet Darba burtnīca un izvēlieties Atvērt nolaižamajā izvēlnē Metodes.

Ielīmējiet iepriekš norādīto e -pasta skriptu Privāta apakšdarbgrāmata_atvērt () .

Makro tiks palaists ikreiz, kad atverat Excel failu.

Tālāk atveriet Uzdevumu plānotājs .

Jūs izmantosit šo rīku, lai lūgtu operētājsistēmai Windows automātiski atvērt izklājlapu ar regulāriem intervāliem, pēc tam tiks sākts jūsu makro, nosūtot e -pastu.

Izvēlieties Izveidot pamata uzdevumu ... no Darbība izvēlni un strādājiet caur vedni, līdz sasniedzat Darbība ekrāns.

Izvēlieties Sāciet programmu un noklikšķiniet Nākamais .

Izmantojiet Pārlūkot pogu, lai atrastu Microsoft Excel atrašanās vietu datorā, vai nokopējiet un ielīmējiet ceļu Programma/skripts lauks.

Pēc tam ievadiet Microsoft Excel dokumenta ceļu Pievienojiet argumentus lauks.

Pabeidziet vedni, un jūsu plānošana būs vietā.

Ir vērts veikt pārbaudi, nākotnē ieplānojot darbību uz dažām minūtēm, pēc tam mainot uzdevumu, tiklīdz varat apstiprināt, ka tas darbojas.

Piezīme : Lai nodrošinātu makro pareizu darbību, jums, iespējams, būs jāpielāgo uzticības centra iestatījumi.

Lai to izdarītu, atveriet izklājlapu un dodieties uz Fails > Iespējas > Uzticības centrs .

No šejienes noklikšķiniet uz Uzticības centra iestatījumi , un nākamajā ekrānā iestatiet radio ripu uz Nekad nerādiet informāciju par bloķētu saturu .

Padariet Microsoft Excel par labu jums

Microsoft Excel ir neticami spēcīgs rīks, taču iemācīties gūt maksimālu labumu no tā var būt nedaudz biedējoši. Ja vēlaties patiesi apgūt programmatūru, jums tas ir jādara ērti ar VBA , un tas nav mazs uzdevums.

spēles, kurās jūs veidojat valstību

Tomēr rezultāti runā paši par sevi. Izmantojot nelielu VBA pieredzi, jūs drīz varēsit likt Microsoft Excel automātiski veikt pamata uzdevumus, dodot jums vairāk laika koncentrēties uz aktuālākiem jautājumiem.

Lai iegūtu zināšanas par VBA, ir vajadzīgs laiks, taču drīz jūs redzēsiet sava darba augļus, ja spēsiet to ievērot.

Viena lieliska vieta, kur sākt, ir mūsu autoritatīvais apmācība par VBA izmantošanu programmā Excel . Kad esat pabeidzis to, šis vienkāršais skripts, lai nosūtītu e -pastus no Excel, jutīsies kā bērnu spēle.

Kopīgot Kopīgot Čivināt E -pasts Canon pret Nikon: kurš kameras zīmols ir labāks?

Canon un Nikon ir divi lielākie nosaukumi kameru nozarē. Bet kurš zīmols piedāvā labāku kameru un objektīvu klāstu?

Lasīt Tālāk
Saistītās tēmas
  • Produktivitāte
  • Programmēšana
  • E -pasta padomi
  • Programmēšana
  • Vizuālā pamata programmēšana
  • Microsoft Excel
  • Microsoft Office padomi
Par autoru Raiens Dube(Publicēti 942 raksti)

Raiens ir ieguvis bakalaura grādu elektrotehnikā. Viņš ir strādājis 13 gadus automatizācijas inženierijā, 5 gadus IT jomā un tagad ir lietotņu inženieris. Bijušais MakeUseOf vadošais redaktors, viņš uzstājās nacionālajās datu vizualizācijas konferencēs un tika demonstrēts valsts televīzijā un radio.

Vairāk no Raiena Dube

Abonējiet mūsu biļetenu

Pievienojieties mūsu informatīvajam izdevumam, lai iegūtu tehniskus padomus, pārskatus, bezmaksas e -grāmatas un ekskluzīvus piedāvājumus!

Noklikšķiniet šeit, lai abonētu