Kuinka kirjoittaa hyödyllisiä makroja Outlook 2016- ja 2019 -viesteihin?
Uusi VBA-makrot Outlook-automaatiota varten? Opi lisäämään VBA-koodi Outlook 365/2016/2019:ään.
Päivitetty: elokuu 2021; Koskee Microsoft Outlook 365 / 2019 / 2016
Tässä on huomautus, jonka saimme lukijalta.
Kiitos erittäin hyödyllisestä Outlook-koodausavusta. Mietin, voitko jakaa koodin, joka auttaa automatisoimaan sähköpostin lähettämisen Outlookissa? Tiedän, että toistuvien viestien lähettämiseen on useita tapoja, mutta olen erityisesti kiinnostunut käyttämään VBA:ta tähän tehtävääni.
Kiitos kysymyksestä. Sähköpostien automaattinen lähettäminen näyttää olevan yksi hyödyllisimmistä ja suosituimmista tehtävistä, jotka voit automatisoida VBA:n avulla. Lue lisätietoja ja yksinkertainen komentosarja, jolla pääset alkuun täältä.
VBA:n kirjoittaminen Outlook-sähköpostien lähettämiseen
Alla olevassa melko yksinkertaisessa esimerkissä käsitellään seuraavat vaiheet:
Tässä on yksinkertainen VBA-koodi yksinkertaisten sähköpostien automaattiseen luomiseen ja lähettämiseen. Huomaa, että sinun on helppo parantaa tätä skriptiä sisältämään liitetiedostoja, tehtäviä jne.', mutta aloitetaanpa hyvin perusskriptillä.
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 -makropikakuvake
Sinun kannattaa ehkä yhdistää juuri kirjoittamasi VBA-koodi Outlookin komentopainikkeeseen. Näin voit käynnistää sen helposti Outlookin nauhaan sijoitetusta pikakuvakkeesta.
Voit tehdä sen seuraavasti:
Mahdollisia ongelmia VBA-makroasetuksissa
Outlook-makroasetuksia on ehkä säädettävä, jotta makrot voidaan suorittaa. Jos näin on, voit tehdä sen seuraavasti.
PowerShellissä voit käyttää Send-MailMessage -cmdlet-komentoa sähköpostin lähettämiseen. Se edellyttää kuitenkin, että todennat sähköpostipalvelimelle, eikä se tue nykyaikaisia todennusmenetelmiä, kuten OAuthia ja Microsoft Modern Authenticationia. Joten sähköpostin lähettäminen on paljon helpompaa, jos sinulla on Outlook-profiili määritettynä tietokoneellesi.
Tässä on esimerkki PowerShell-komentosarjasta, joka lukee tietoja Excel -tiedostosta ja käyttää Outlook-profiilia sähköpostin lähettämiseen jokainen käyttäjä:
# avaa Excel-tiedosto
$ExcelObj = Uusi-objekti -comobject Excel.Application
$ExcelWorkBook = $ExcelObj.Workbooks.Open("C:\PS\user_list.xlsx")
$ExcelWorkSheet = $ExcelWorkBook.Sheets.Item("Sheet1")
# Hae xlsx-tiedoston täytettyjen rivien määrä
$rowcount=$ExcelWorkSheet.UsedRange.Rows.Count
# Selaa kaikki sarakkeen 1 rivit toisesta rivistä alkaen (nämä solut sisältävät käyttäjänimet ja sähköpostit).
for($i=2;$i -le $rivien määrä;$i++){
$useremail = $ExcelWorkSheet.Columns.Item(1).Rows.Item($i).Text
$FullUsername = $ExcelWorkSheet.Columns.Item(2).Rows.Item($i).Teksti
$Tila = $ExcelWorkSheet.Columns.Item(4).Rows.Item($i).Teksti
$pwdchange = $ExcelWorkSheet.Columns.Item(3).Rows.Item($i).Teksti
# Luo viestin leipäteksti
$strSubj = " Tilisi tila woshub.com-verkkotunnuksessa "
$strBody = "Hei " + $FullUsername
$strBody = $strBody + " `r`n Tilisi woshub.com-verkkotunnuksessa on " + $Status
$strBody = $strBody + "`r`n Viimeisimmän salasanan vaihdon päivämäärä ja kellonaika on: " + $pwdchange
$strfile="C:\ps\" + $useremail + ".txt"
# Oletetaan, että Outlook on käynnissä. Jos se ei ole käynnissä, se on käynnistettävä komennolla $outlook = new-object -comobject outlook.application
$outlook = [Runtime.InteropServices.Marshal]::GetActiveObject("Outlook.Application")
$sähköposti = $outlook.CreateItem(0)
$email.To = $käyttäjän sähköposti
$email.Subject = $strSubj
$email.Body = $strBody
# Liitä tiedosto (tarvittaessa)
$email.Attachments.add($strfile)
#lähetä sähköpostiviesti
$email.Send()
}
$ExcelWorkBook.close($true)
Tämä PowerShell-komentosarja olettaa, että Outlook on käynnissä tietokoneessasi. Skripti luo sähköpostin aiheen ja tekstin jokaiselle vastaanottajan SMTP-osoitteelle XLSX-tiedostossa ja liittää tiedoston. Sitten lähettää sähköpostin.
Uusi VBA-makrot Outlook-automaatiota varten? Opi lisäämään VBA-koodi Outlook 365/2016/2019:ään.
Opi kopioimaan helposti Outlook-kalenteritapahtumat, kokoukset ja tapaamiset Office 365:ssä, 2016:ssa ja 2019:ssä.
Opi suunnittelemaan ja luomaan Outlookin mukautettuja käyttäjälomakkeita.
Outlook-postilaatikko ei päivity automaattisesti? Opi päivittämään Outlook 365 / 2019 / 2016 / 2013 -postilaatikkosi automaattisesti automaattisesti.
Opi lisäämään / upottamaan ja lähettämään gif-kuva Outlook 2016 ja 2019 lähteviin sähköpostiviesteihin.
Opi diagnosoimaan ja vianmäärittämään erilaisia Microsoft Outlook -asiakasohjelman yhteyden katkeamisongelmia Windows 10:ssä.
Opi kirjoittamaan Outlook-makroja sähköpostin lähettämisen automatisoimiseksi.
Opi poistamaan käytöstä Outlook 2016/2019 -kalentereiden muistutukset ja ilmoitukset sekä Windows- että MAC-käyttöjärjestelmissä.
Opi parantamaan Outlookin suorituskykyä.
Tässä viestissä autat sinua vaihtamaan Outlook.com-tilisi salasanan ja pitämään Windowsin synkronoituna kaikissa laitteissasi.