Hvernig á að senda tölvupóst í Outlook með VBA?

Uppfært: ágúst 2021; Gildir fyrir Microsoft Outlook 365 / 2019 / 2016

Hér er athugasemd sem við fengum frá lesanda.

Takk fyrir mjög gagnlega Outlook kóðun hjálpina. Ég er að velta fyrir mér hvort þú getir deilt einhverjum kóða til að hjálpa til við að gera sjálfvirkan sendingu tölvupósts í Outlook? Ég veit að það eru nokkrar leiðir til að senda endurteknar skilaboð en ég hef sérstakan áhuga á að nota VBA fyrir þetta verkefni.

Takk fyrir spurninguna. Sjálfvirk sending tölvupósts virðist vera meðal gagnlegustu og vinsælustu verkefna sem þú getur sjálfvirkt með VBA. Lestu áfram til að fá frekari upplýsingar og einfalt handrit til að koma þér af stað hér.

Að skrifa VBA til að senda Outlook tölvupóst

Í frekar einföldu dæminu hér að neðan munum við fara yfir eftirfarandi skref:

  1. Í fyrsta lagi munum við nota VBA Outlook hlut líkanið til að búa til nýjan tölvupóst.
  2. Síðan förum við áfram og stillum mikilvægi skilaboðanna, viðtakendum (aðskilin með semípunktum) og líkamstexta stíl og innihald.
  3. Þá munum við birta skilaboðin í Microsoft Outlook forritinu þínu.
  4. Að lokum munum við halda áfram og senda það til viðtakenda.

Hér er einfaldi VBA kóðann til að búa til og senda sjálfkrafa einfaldan tölvupóst. Athugaðu að þú ættir auðveldlega að bæta þetta handrit til að innihalda skráarviðhengi, verkefni osfrv', en við skulum byrja á mjög einföldu handriti.

Sub SendMail()
Dim MyEmail As MailItem
Set MyEmail = Application.CreateItem(olMailItem)

With MyEmail
.To = ""
.Importance = olImportanceHigh
.Subject = ""
.Body = ""
.BodyFormat = olFormatHTML
.Display
End With

'I purposely commented the next line, uncomment it by removing the "'" sign to send your email.
' MyEmail.Send
End Sub

Outlook VBA macro flýtileið

Þú gætir viljað kanna að tengja VBA kóðann sem þú skrifaðir nýlega við skipanahnapp í Outlook. Þetta gerir þér kleift að ræsa það auðveldlega frá flýtileið sem er staðsettur í Outlook borði.

Svona á að gera það:

  1. Fyrst skaltu fara á undan og opna Microsoft Outlook.
  2. Smelltu á File og veldu síðan Valkostir
  3. Farðu nú á undan og veldu Customize Ribbon.
  4. Í Customize Ribbon hlutanum muntu taka eftir Veldu skipanir af listanum.
  5. Veldu Fjölvi
  6. Veldu síðan nýstofnaða VBA kóðann þinn, í okkar tilviki ætti nafnið að vera SendMail.
  7. Smelltu síðan á Bæta við og síðan á OK. Valfrjálst gætirðu viljað úthluta tákni á fjölvi.
  8. Fjölva þitt verður fáanlegt á Quick Access tækjastikunni efst til vinstri í Outlook forritinu þínu.

Möguleg vandamál með VBA macro stillingar

Hugsanlega þarf að stilla Outlook fjölvistillingarnar þínar til að keyra fjölvi. Ef svo er, hér er hvernig á að gera það.

Bónus: Sendu tölvupóst frá Outlook með PowerShell

Í PowerShell geturðu notað Send-MailMessage cmdlet til að senda tölvupóst. Hins vegar krefst það að þú auðkennir fyrir póstþjóninum og það styður ekki nútíma auðkenningaraðferðir, svo sem OAuth og Microsoft Modern Authentication. Svo það er miklu auðveldara að senda tölvupóst ef þú ert með Outlook prófíl stillt á tölvunni þinni.

Hér er dæmi um PowerShell skriftu sem les gögn úr Excel skrá og notar Outlook prófíl til að senda tölvupóst á hver notandi:

# opnaðu Excel skrána
$ExcelObj = New-Object -comobject Excel.Application
$ExcelWorkBook = $ExcelObj.Workbooks.Open("C:\PS\user_list.xlsx")
$ExcelWorkSheet = $ExcelWorkBook.Sheets.Item("Sheet1")
# Fáðu fjölda fylltra raða í xlsx skrá
$rowcount=$ExcelWorkSheet.UsedRange.Rows.Count
# Farðu í gegnum allar línurnar í dálki 1, byrjað á annarri röð (þessar reitur innihalda notendanöfn og tölvupóst).
for($i=2;$i -le $rowcount;$i++){
$useremail = $ExcelWorkSheet.Columns.Item(1).Rows.Item($i).Texti
$FullUsername =  $ExcelWorkSheet.Columns.Item(2).Rows.Item($i).Text
$Status =  $ExcelWorkSheet.Columns.Item(4).Rows.Item($i).Text
$pwdchange = $ExcelWorkSheet.Columns.Item(3).Rows.Item($i).Texti
# Búðu til meginmál skilaboða
$strSubj = " Reikningsstaðan þín á woshub.com léninu "
$strBody = "Kæri " + $FullUsername
$strBody = $strBody + " `r`n Reikningurinn þinn á woshub.com léninu er í " + $Status
$strBody = $strBody + "`r`n Dagsetning og tími síðustu breytinga á lykilorði er: " +  $pwdchange
$strfile="C:\ps\" + $useremail + ".txt"
# Við gerum ráð fyrir að Outlook sé í gangi, ef svo er ekki þarftu að ræsa það með skipuninni $outlook = new-object -comobject outlook.application
$outlook = [Runtime.InteropServices.Marshal]::GetActiveObject("Outlook.Application")
$email = $outlook.CreateItem(0)
$email.To = $useremail
$email.Subject = $strSubj
$email.Body =  $strBody
# Hengdu við skrá (ef nauðsyn krefur)
$email.Attachments.add($strfile)
#senda tölvupóstinn
$email.Send()
}
$ExcelWorkBook.close($true)

powershell forskrift til að senda tölvupóst frá outlook stillta prófílnum

Þetta PowerShell handrit gerir ráð fyrir að Outlook sé í gangi á tölvunni þinni. Handritið býr til efni og meginmál tölvupóstsins fyrir hvern SMTP-vistfang viðtakanda í XLSX skránni og lætur skrána fylgja með. Sendir svo tölvupóstinn.


Hvernig á að skrifa gagnleg fjölvi í Outlook 2016 og 2019 skilaboð?

Hvernig á að skrifa gagnleg fjölvi í Outlook 2016 og 2019 skilaboð?

Nýr í VBA fjölvi fyrir sjálfvirkni í Outlook? Lærðu hvernig á að setja VBA kóða inn í Outlook 365 / 2016 / 2019.

Hvernig á að afrita fundi og viðburði í Outlook 2019 / 365 / 2016 dagatalinu þínu?

Hvernig á að afrita fundi og viðburði í Outlook 2019 / 365 / 2016 dagatalinu þínu?

Lærðu hvernig þú getur auðveldlega afritað Outlook dagatalsviðburði, fundi og stefnumót í Office 365, 2016 og 2019.

Outlook eyðublöð: Hvernig á að búa til útfyllanleg eyðublöð í Microsoft Office 2016 / 2019?

Outlook eyðublöð: Hvernig á að búa til útfyllanleg eyðublöð í Microsoft Office 2016 / 2019?

Lærðu hvernig þú getur hannað og búið til sérsniðin notendaeyðublöð fyrir Outlook.

Hvernig á að endurnýja Outlook pósthólfið mitt þegar það uppfærist ekki sjálfkrafa?

Hvernig á að endurnýja Outlook pósthólfið mitt þegar það uppfærist ekki sjálfkrafa?

Outlook pósthólfið uppfærist ekki sjálfkrafa? Lærðu hvernig þú getur sjálfkrafa endurnýjað Outlook 365 / 2019 / 2016 / 2013 pósthólfið þitt sjálfkrafa.

Hvernig á að bæta við gif myndum í Outlook 2016 / 2019 tölvupósti eða undirskrift?

Hvernig á að bæta við gif myndum í Outlook 2016 / 2019 tölvupósti eða undirskrift?

Lærðu hvernig á að bæta við / fella inn og senda GIF mynd í Outlook 2016 og 2019 sendan tölvupóst.

Af hverju Outlook er ótengdur eða ótengdur og hvernig á að tengjast aftur?

Af hverju Outlook er ótengdur eða ótengdur og hvernig á að tengjast aftur?

Lærðu hvernig á að greina og leysa mismunandi vandamál með aftengingu Microsoft Outlook biðlara í Windows 10.

Hvernig á að senda tölvupóst í Outlook með VBA?

Hvernig á að senda tölvupóst í Outlook með VBA?

Lærðu að skrifa Outlook fjölvi til að gera tölvupóstsendingu sjálfvirkan.

Komdu í veg fyrir að Outlook 365 / 2019 / 2016 dagatalstilkynningar fyrir fundi og stefnumót birtist

Komdu í veg fyrir að Outlook 365 / 2019 / 2016 dagatalstilkynningar fyrir fundi og stefnumót birtist

Lærðu hvernig á að slökkva á áminningum og tilkynningum frá Outlook 2016 / 2019 dagatölum, bæði á Windows og MAC.

Hvernig á að láta Microsoft Outlook keyra hraðar (útgáfur 2019 / 365/ 2016)?

Hvernig á að láta Microsoft Outlook keyra hraðar (útgáfur 2019 / 365/ 2016)?

Lærðu hvernig á að bæta árangur þinn í Outlook.

Hvernig á að breyta Hotmail lykilorðinu þínu í Windows, Android síma, iPhone eða iPad?

Hvernig á að breyta Hotmail lykilorðinu þínu í Windows, Android síma, iPhone eða iPad?

Í þessari færslu hjálpar þér vel að breyta lykilorði Outlook.com reikningsins þíns og halda samstillingu Windows þíns á öllum tækjum þínum.