Kaip siųsti masinius el. Laiškus iš „Excel VBA“ vienu paspaudimu „Excel“

Anonim

Ar kada nors teko siųsti el. Laiškus iš „Excel VBA“ į kelis el. Pašto adresus, pateiktus „Excel“ lape? Norite sužinoti, kaip siųsti laiškus iš „Excel“ neatveriant perspektyvos? Šiame straipsnyje aptariama, kaip vienu paspaudimu galite automatizuoti „Outlook“ ir siųsti kelis el. Laiškus su priedais iš „Excel“, taip pat išlaikydami žmones kopijoje ir kopijoje.

Galų gale galite atsisiųsti failą, kad vyrai iškart išsiųstų šimtus ID. Faile yra makrokomanda, skirta siųsti el. Laiškus iš „Excel“.

Kaip siųsti laiškus iš „Excel“?
Norėdami siųsti laiškus iš „Excel“, turite suprasti šiuos VBA fragmentus.

Svarbu: El. Pašto adresas turi būti sukonfigūruotas naudojant „Outlook“ programą.

Paspauskite F11, kad atidarytumėte VB redaktorių.

  • Pridėkite nuorodą į „Outlook“ objektų biblioteką:
      • Meniu eikite į Įrankiai ir spustelėkite nuorodos.

    • Raskite „Microsoft 16.0“ objektų biblioteką. Versija gali būti kitokia. „Excel 2016“ yra 16,0. Pažymėkite. Ir spustelėkite Gerai.

    • Sukurkite „Outlook“ programos ir pašto nuorodas: Kad galėtume pasiekti „Microsoft Outlook“ funkcijas, turime sukurti jos objektą.
„Dim outApp“ kaip „Outlook.Application“ Tai sukurs nuorodą į „Outlook“ objektą. Dim outApp As Outlook.MailItem 'Tai sukurs nuorodą į MailItem. 
    • Inicijuokite nuorodas: Pirmiau pateiktas nuorodas reikia inicijuoti:
Set outApp = Nauja Outlook.Application Nustatykite outMail = outApp.CreateItem (0)
    • Laiškų siuntimas naudojant „outMail“ objektą: Žemiau esančiose eilutėse bus nurodytas tikslinis pašto ID, kopija, bcc, tema, tekstas, priedas ir siuntimo komanda.
Su outMail .To = "abcd.mail.com" 'Privaloma. Čia apibrėžiate paskirties pašto ID… cc = "cc.mail.com" 'neprivaloma. Cc pašto ID, jei norite… BCC = "bcc.mail.com" 'neprivaloma. Bcc pašto ID, jei norite … Subject = subj 'turėtų būti. Masažas ant pašto kūno… Kūnas = žinutė 'neprivaloma. Pašto kūno masažas … Priedai. Pridėti „C: /exceltip.com \ test.xlsx“ 'neprivaloma. Visiškai kvalifikuotas priedo pavadinimas … Siųsti 'Privaloma, jei norite siųsti laiškus iš „Excel“. Jei norite matyti laiškus „Outlook“, naudokite .Display metodą. Pabaiga su 

Viskas. Viskas, ko jums reikia norint išsiųsti laišką iš „Excel“ naudojant VBA.

Dabar pažiūrėkime pavyzdį, kuris siunčia laiškus į kiekvieną „Excel“ stulpelio el. Pašto ID.

Scenarijus:
Įsivaizduokite, jums pateikiamas „Excel“ lapas, kuriame yra 100 el. Pašto adresų, ir jums reikia išsiųsti el. Laišką į kiekvieną el. Pašto ID atskirai. Negana to, reikia pridėti ir elementų. Jei tai padarysite rankiniu būdu, užtruksite kelias valandas. Taigi automatizuokime šią pašto siuntimo užduotį „Excel VBA“.

Čia aš turiu šiuos duomenis. C stulpelyje, pavadintame „Siųsti laišką“, yra keli el. Pašto adresai. Turiu išsiųsti el. Laišką į kiekvieną šio stulpelio el. Pašto ID.
Tam aš sukūriau stulpelius, skirtus temai, masažo kūnui, CC ir BCC.

Skiltyje „Siųsti laišką“ neturėtų būti tuščių langelių. Visuose kituose stulpeliuose gali būti tuščių langelių. Jeigu nori
keli el. pašto adresai į tada šiame stulpelyje parašykite tuos el. pašto adresus kableliais. Įsitikinkite, kad el. Pašto adresai galioja.

Jei norite siųsti priedus. Įrašykite tų failų adresus priedų stulpelyje.

Užrašykite temą stulpelyje Tema.

Masažas „Massage Body“ stulpelyje.

Jei norite, kad kas nors liktų cc, parašykite jo el. Pašto adresą stulpelyje CC. Tas pats ir su BCC. naudokite kablelį keliems el. pašto adresams.

Dabar, norėdami siųsti el. Laiškus į kiekvieną stulpelio el. Pašto ID, atlikite šiuos veiksmus.

  • Paspauskite „Alt“+F11, kad „Excel“ atidarytumėte VBA redaktorių.
  • Pridėkite nuorodą į „Outlook“ objektą atlikdami anksčiau aprašytus veiksmus.
  • Naujame modulyje nukopijuokite žemiau esantį kodą.
'*** Jūsų sistemoje turi būti sukonfigūruotas "Outlook" el. Pašto el. Pašto programa "*** Nuorodų kūrimas į „Application“ ir „MailItem“ „Outlook“ objektus Dim outApp As Outlook.Application Dim outMail As Outlook.MailItem 'Kintamojo sukūrimas įvairių pašto elementų vertėms laikyti Dim sendTo, subj, atchmnt, msg, ccTo, bccTo As String Dim lstRow as Long „Mano duomenys yra„ Exceltip.com “lape, galite turėti bet kokį lapo pavadinimą. ThisWorkbook.Sheets ("Exceltip.com"). Suaktyvinkite "Gauti paskutinę eilutę, kurioje yra 3 stulpelio el. Pašto adresas. LstRow = Ląstelės (Rows.Count, 3) .End (xlUp) .Row 'Kintamasis, kad būtų laikomi visi el. Pašto adresai Dim rng Kaip diapazonas Nustatykite „rng = Range“ („C2: C“ & lstRow) „Outlook“ objekto inicijavimą, kad pasiektumėte jo funkcijas Set outApp = New Outlook.Application On Error GoTo cleanup “, kad būtų pašalintos visos klaidos kuriant objektą. „Kartokite, kad kartotumėte kiekvieną eilutę, laikykite el. Laiško duomenis kintamuosiuose ir siųskite“ laiškus į kiekvieną el. Pašto adresą. Kiekvienam langeliui į rng sendTo = Diapazonas (ląstelė.Address) .Polinkis (0, 0) .Vertė2 subj = Diapazonas (ląstelė.Address) .Poilstis (0, 1) .Vertė2 ir "-MS" msg = Diapazonas (langelis. Adresas. cell.Address). Offset (0, 4). Value2 On Error Resume Next “, kad įvyktų bet kokia klaida kuriant žemiau esantį objektą Set outMail = outApp.CreateItem (0) 'Laiškų rašymas ir siuntimas naujame laiške Su outMail .To = sendTo .cc = cc Jei norite, kad laiškas būtų matomas prieš siunčiant, naudokite .Display metodą. Baigti su klaida „GoTo 0“ Norėdami išvalyti bet kokią anksčiau užfiksuotą klaidą Set outMail = Nieko “panaikina kito pašto pašto objektą Kitas langelis“ ciklas baigia valymą: „atleidžiami visi sukurti objektai Set outApp = Nothing Application.ScreenUpdating = True Application.ScreenUpdating = True Pabaiga Sub 

Aukščiau pateiktas kodas siųs el. Laiškus į kiekvieną el. Pašto ID stulpelio „siųsti laišką“ eilutėje. Dabar, norėdami paleisti šį kodą, galite jį tiesiogiai paleisti iš čia. Arba galite pridėti figūrą ar mygtuką į savo darbaknygę ir tada priskirti šią makrokomandą tam objektui. Aš naudoju figūras, nes jas galima pritaikyti. Norėdami tai padaryti, atlikite toliau nurodytus veiksmus.

    • Eikite į skirtuką Įterpti.
    • Iliustracijos grupėje galite rasti figūras, spustelėkite mėgstamą formą.

    • Nuvilkite jį ant lapo.
    • Jei norite, pagražinkite.
    • Dešiniuoju pelės mygtuku spustelėkite jį. Spustelėkite Priskirti makrokomandą.

    • Iš sąrašo pasirinkite „BulkMail“ makrokomandą.

  • Išeikite iš redagavimo režimo.

Dabar, kai spustelėsite šį objektą, jūsų makrokomanda bus paleista ir išsiųs el. Patikrinkite išsiųstus laiškus, kad įsitikintumėte.
„Excel“ pašto siuntėjo failą galite atsisiųsti čia.

Siųskite masinius el. Laiškus iš „Excel VBA“ vienu paspaudimu

Padalinkite „Excel“ lapą į kelis failus pagal stulpelį naudodami VBA | Jei norite padalinti darbalapį į kelis failus, atsižvelgdami į stulpelio reikšmes, turėsite jį filtruoti, nukopijuokite ir įklijuokite į naują failą.

Kaip filtruoti duomenis „Excel“ naudojant VBA | Filtruoti duomenis naudojant VBA yra paprasta. Šios paprastos kodų eilutės filtruoja duomenis pagal nurodytus kriterijus.

Išjunkite įspėjamuosius pranešimus naudodami VBA programoje „Microsoft Excel 2016“ | Atlikdamas kelias užduotis, pvz., Atidarydamas ir uždarydamas failus, „Excel“ rodo įspėjamuosius pranešimus, kad neprarastumėte duomenų. Jie nutraukia veikimo kodą. Norėdami jų išvengti

Kaip peržiūrėti „Excel“ lapus naudojant VBA | Norėdami judėti pirmyn ir atgal dviem ar daugiau lapų, turime juos perkelti. Norėdami peržiūrėti kelis lapus, naudojame…

7 „Microsoft Excel VBA“ kilpų pavyzdžiai | For ciklas yra dažniausiai naudojama kilpų kūrimo technika bet kuria kalba. „Excel VBA“ nėra išimtis.

Populiarūs straipsniai:

50 „Excel“ nuorodų, skirtų produktyvumui padidinti | Greičiau atlikite savo užduotį. Šie 50 sparčiųjų klavišų leis dar greičiau dirbti naudojant „Excel“.

Kaip naudotis „VLOOKUP“ funkcija „Excel“ | Tai yra viena iš dažniausiai naudojamų ir populiariausių „Excel“ funkcijų, naudojama norint ieškoti vertės iš įvairių diapazonų ir lapų.

Kaip „Excel“ naudoti funkciją COUNTIF | Naudodami šią nuostabią funkciją, suskaičiuokite reikšmes su sąlygomis. Norint skaičiuoti konkrečią vertę, nereikia filtruoti duomenų. Skaitiklio funkcija yra būtina norint paruošti prietaisų skydelį.

Kaip naudotis „SUMIF“ funkcija „Excel“ | Tai dar viena esminė prietaisų skydelio funkcija. Tai padeda apibendrinti vertes konkrečiomis sąlygomis.