Com escriure macros útils als missatges dOutlook 2016 i 2019?

A Microsoft Office, utilitzem Visual Basic per a aplicacions (VBA) per crear programes personalitzats que milloren la funcionalitat bàsica d'Office i ajuden a estalviar temps mitjançant l'automatització de tasques repetitives. Ens referim a aquests petits programes VBA com a macros .

En aquest tutorial, volíem oferir el recurs de desenvolupament de macros més complet del web per a Outlook. Ens centrarem a explorar els conceptes bàsics de l'Outlook VBA per a principiants, aprendrem a escriure macros i després buscarem algunes idees de macros útils més avançades. A partir dels comentaris que vam rebre, després de seguir aquest tutorial, hauríeu de poder desenvolupar i executar macros VBA senzilles per a Outlook.

  • Primer: aprendrem a inserir i desar una macro VBA personalitzada senzilla en una sessió d'Outlook activa.
  • A continuació, configurarem l'entorn de desenvolupament de macros al nostre ordinador.
  • Passarem pels exemples més bàsics d'Outlook VBA. Això us ajudarà a comprendre els conceptes bàsics del desenvolupament de macros i us permetrà escriure macros senzilles.
  • A continuació, anirem definint una icona de drecera per a la nostra macro a la barra d'eines d'accés ràpid. Això ens permetrà executar la macro amb facilitat.
  • I acabarem activant les macros d'Outlook i gestionant la seva configuració de seguretat per assegurar-nos que el codi s'executi realment quan se'ns demani als nostres ordinadors.

Puc gravar una macro d'Outlook?

A diferència d'altres aplicacions d'Office, Outlook no ofereix una gravadora de macros senzilla per capturar les accions de l'usuari i generar automàticament el codi VBA necessari per a nosaltres en segon pla. Per tant, si volem afegir la nostra pròpia funcionalitat personalitzada a Outlook, haurem d'aprendre a escriure programes VBA senzills i incorporar-los a la nostra sessió d'Outlook.

Nota: si us interessa saber com funciona realment la gravadora de macros d'Office, us recomanaria que consulteu els tutorials de macros de MS Word i Excel VBA .

Escriptura de macros VBA a Outlook

  1. En primer lloc, obriu Microsoft Outlook.
  2. Ara, seguiu endavant i premeu el botó Alt + F11 .
  3. S'obrirà l'entorn de desenvolupament integrat (IDE) del desenvolupador VBA.
  4. Amplieu l'arbre del projecte fins al node ThisOutlookSession .
  5. Feu clic amb el botó dret a ThisOutlookSession i, a continuació, premeu Insereix .
  6. Ara inseriràs un mòdul de Visual Basic. Per aconseguir-ho, seguiu endavant i seleccioneu Mòdul .
  7. Enganxeu el vostre codi VBA a la finestra del mòdul .
  8. Premeu Fitxer i seleccioneu Desa .
  9. Avança i tanca l' entorn de desenvolupador . Això us portarà de nou a la vostra interfície d'usuari d'Outlook.

Nota: segueix llegint alguns exemples de codi senzills per començar amb VBA. No copieu mai el codi VBA de recursos desconeguts.

Com configurar la pestanya de desenvolupador a Outlook?

Si desenvolupareu macros d'Outlook amb freqüència, és possible que vulgueu configurar el vostre entorn de desenvolupament d'Office. Sona fantàstic, no? De fet, és un procediment bastant senzill. Continueu llegint per obtenir els detalls:

  1. Obriu Outlook , feu clic amb el botó dret a l'àrea superior de la cinta i seleccioneu Personalitza la cinta .

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

  1. Comproveu l' entrada del desenvolupador i premeu D'acord .

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

  1. Ara trobareu el menú Desenvolupador a la cinta.

Exemples útils d'Outlook VBA

Creeu un missatge de correu electrònic

Aquest senzill fragment crea un element de missatge de correu electrònic nou mitjançant programació.

L'script comença creant un element de correu d'Outlook, després estableix els camps a, assumpte, text del cos i CC. Finalment, mostra el missatge a Outlook perquè el pugueu revisar i enviar manualment.

Public Sub CreateMail() Dim MyEmail As MailItem ' Create a new Outlook message item programatically Set MyEmail = Application.CreateItem(olMailItem) 'Set your new message to, subject, body text and cc fields. With MyEmail .To = "[email protected]" .Subject = "Insert your message subject here" .Body = "Insert your email text body here" .CC = "[email protected]" End With MyEmail.Display End Sub

Nota avançada: podeu utilitzar plantilles d'Outlook predefinides quan definiu correus electrònics nous amb VBA. Per fer-ho, haureu d'aprofitar el mètode CreateItemFromTemplate i especificar la ubicació del fitxer de plantilla d'Outlook (*. oft ).

Envieu un correu electrònic amb programació

Si voleu que Outlook enviï automàticament el correu electrònic que acabeu de crear, podeu afegir la línia següent al codi publicat més amunt. Enganxeu la línia següent abans de la instrucció End Sub del fragment anterior.

MyEmail.Send

Adjunta un fitxer a un correu electrònic

En molts casos, voleu automatitzar l'enviament d'un correu electrònic amb un fitxer adjunt. Pot ser un document de Word, un full de càlcul Excel, una presentació de Powerpoint, documents PDF, etc. Si voleu enviar un correu electrònic amb fitxers adjunts de manera programàtica, utilitzeu aquest codi:

#VBA Code Dim MyEmail As MailItem ' Create a new Outlook message item programatically Set MyEmail = Application.CreateItem(olMailItem) 'Define your attachment folder path and file name - modify this part as needed Dim AttachFolder, AttachFile As String AttachFolder = "C:\" AttachFile = "test.txt" 'Set your new message to, subject, body text and cc fields. With MyEmail .To = "recipient@my_server.com; mysecondrecipient@my_server.com" .Subject = "This is your message subject" .Body = "Insert your email text body here" .CC = "cc@my_server.com" .Attachments.Add AttachFolder & AttachFile End With MyEmail.Display End Sub

Notes:

  • Assegureu-vos d'establir el camí correcte i el nom del fitxer adjunt al fragment.
  • En aquest exemple, he establert diversos destinataris al correu electrònic , si us plau, ajusteu-lo segons sigui necessari.

Creeu una tasca amb VBA

El fragment següent crea una tasca d'Outlook, l'assigna a una altra persona i estableix l'assumpte de la tasca i el text del cos.

Public Sub CreateTask() Dim MyTask As TaskItem ' Create a new Outlook task Set MyTask = Application.CreateItem(olTaskItem) 'Set your new task recipients and information fields With MyTask .Assign .Recipients.Add "taskrecipient@my_server.com" .Subject = "This is your task subject" .Body = "Insert a thorough explanation of your task here." End With MyTask.Display End Sub

Desa com a HTML

Pocs lectors van preguntar com automatitzar l'emmagatzematge de correus electrònics a HTML. El codi següent ho aconsegueix exactament.

Public Sub SaveAsHTML() On Error Resume Next Dim MyWindow As Outlook.Inspector Dim MyItem As MailItem Dim FilePath As String FilePath = Environ("HOMEPATH") & "\Documents\" & "\" Dim ItemName As String Set MyWindow = Application.ActiveInspector If TypeName(MyWindow) = "Nothing" Then MsgBox ("Kindly open an email to save") Else Set MyItem = MyWindow.CurrentItem ItemName = MyItem.Subject ' File name will be identical to the message subject With MyItem .SaveAs FilePath & ItemName & ".html", olHTML End With End If End Sub

Nota: Assegureu-vos que inicieu aquest codi només als correus electrònics oberts a l'Outlook (no a la vista Safata d'entrada/Explorador).

Preguntes relacionades amb les macros d'Outlook

On s'emmagatzemen les macros a Outlook?

És possible que estigueu vagant on s'emmagatzema exactament la vostra macro utilitzada. Bé, a diferència d'Excel per exemple, que permet emmagatzemar macros al fitxer personal.xlb o en fulls de càlcul específics; totes les macros de Microsoft Outlook s'emmagatzemen en un fitxer global del vostre sistema de fitxers. Concretament, el fitxer que emmagatzema totes les vostres macros s'anomena VBAProject.otm. El fitxer es pot trobar a: C:\users\\AppData\Roaming\Microsoft\Outlook.

Botó de drecera per a macros d'Outlook

El nostre següent pas és inserir un petit botó de drecera que ens permetrà executar fàcilment la macro. Per simplificar, inserirem aquest botó a la barra d'eines Accés ràpid.

  1. Obriu Microsoft Outlook, si encara no està obert.
  2. Feu clic amb el botó dret a la cinta d' Outlook superior i seleccioneu Personalitza la barra d'eines d'accés ràpid .

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

       Nota: podeu utilitzar un procediment similar per col·locar la vostra icona a la cinta en comptes de fer-ho a la barra d'eines d'accés ràpid.

  1. Premeu el quadre combinat " Tria ordres de " i seleccioneu Macros .

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

  1. Seleccioneu la macro que acabeu de crear i premeu Afegeix .

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

  1. Premeu Modifica per definir una imatge d'icona personalitzada per al botó de la barra d'eines d'accés ràpid.

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

  1. Quan hagis acabat, premeu D'acord.

Com habilitar una macro a Outlook?

Aquest pas és opcional i només s'ha de seguir si rebeu un missatge d'error en executar la macro que acabeu de crear.

  1. El següent és permetre que Outlook executi la nostra macro VBA. De manera predeterminada, Microsoft Office desactiva les macros i no les permet; per tant, haurem de definir la seguretat de macro adequada per permetre que la vostra macro d'Outlook personalitzada s'executi.
  2. A l'Outlook 2016, feu clic a Desenvolupador a la cinta i seleccioneu Seguretat de macros .

Com escriure macros útils als missatges d'Outlook 2016 i 2019?

  1. Seleccioneu la configuració de seguretat de la macro.
    1. A l'Outlook 2016: seleccioneu Notificacions només per a macros signades digitalment, totes les altres desactivades o Notificacions per a totes les macros .
    2. A l'Outlook 2019: seleccioneu Desactiva totes les macros amb notificació . Això publicarà un missatge d'advertència que requereix l'aprovació de l'usuari abans que s'executi la macro.
  2. Després de configurar la configuració de seguretat de la macro, premeu D'acord .

Nota: la vostra configuració de seguretat actual pot impedir que les macros s'executin a l'Outlook. Aquí teniu un tutorial sobre com procedir si les macros estan desactivades al vostre projecte de macro d'Outlook .

Com utilitzar la macro d'Outlook?

Per últim, però no per això menys important, ara és el moment d'executar la vostra macro acabada de crear.

  1. Navegueu a la barra d'eines d'accés ràpid (a la part superior esquerra de la pantalla, una mica per sobre del menú INICI).
  2. Premeu la icona que heu assignat a la vostra macro.
  3. Voi'la, acabeu de completar i executar la vostra (primera) macro d'Outlook VBA!

Idees addicionals de macros d'Outlook

Diversos dels nostres lectors van preguntar si podríem especificar més idees per a l'automatització d'Outlook. Aquí teniu uns quants per començar.

  1. Desa automàticament els fitxers adjunts dels missatges entrants en una carpeta específica.
  2. Llegiu una llista d'entrades de cites d'un fitxer CSV i creeu cites automàticament en un o més calendaris.
  3. Creació automàtica de tasques/reunions/contactes a partir dels correus electrònics entrants.
  4. Visualitzeu l'estat de l'estat de resposta dels assistents a un conjunt de reunions recurrents.
  5. Envieu correus electrònics d'Outlook des d'Excel, Word o Access.
  6. Baixeu tots els fitxers adjunts d'una carpeta específica d'Outlook al vostre ordinador. Si l'espai del vostre compte d'Outlook és limitat, podeu utilitzar aquesta macro per baixar específicament només fitxers adjunts grans (més de 5 Mb, per exemple) al vostre disc, en lloc de gestionar-los a l'Outlook.
  7. Exporta els contactes d'Outlook directament a una base de dades Access. Tingueu en compte que Exportar contactes a CSV està disponible al producte.
  8. Actualitza automàticament la informació de la reunió per a cites individuals o recurrents.

Propers passos

Creació d'una drecera per a la vostra macro

Creeu una drecera per a la vostra macro perquè pugueu accedir-hi fàcilment en el futur. Per crear una drecera de macro:

  • Obre la Barra d'eines d'accés ràpid a la part superior d'Outlook.
  • Feu clic a Més ordres.
  • Al menú desplegable Trieu les ordres de, seleccioneu Macros.
  • Seleccioneu la macro que vulgueu com a drecera i, a continuació, feu clic al botó Afegeix .
  • Feu clic a D'acord.
  • La drecera de macro apareixerà al costat de la barra d'eines d'accés ràpid.

Si mai voleu eliminar aquesta drecera de la barra d'eines, feu-hi clic amb el botó dret i seleccioneu Elimina de la barra d'eines d'accés ràpid.

Aquí teniu una altra manera de trobar les vostres macros existents:

  • Feu clic a la pestanya Desenvolupador .
  • Feu clic a Macros.
  • Seleccioneu la macro que voleu utilitzar.

Com editar la configuració de la macro

Per canviar o editar la configuració de la macro d'Outlook:

  • Feu clic a la pestanya Desenvolupador .
  • Feu clic a Seguretat de macro.

Des d'aquí, tens l'opció de:

  • Desactiveu totes les macros sense notificació
  • Activeu les notificacions per a les macros signades digitalment i desactiveu totes les altres macros
  • Activa les notificacions per a totes les macros
  • Activa totes les macros (no recomanat)
  • Apliqueu la configuració de seguretat de macro als complements instal·lats

Com escriure macros útils als missatges dOutlook 2016 i 2019?

Com escriure macros útils als missatges dOutlook 2016 i 2019?

Nou a VBA Macros per a l'automatització d'Outlook? Obteniu informació sobre com inserir codi VBA a Outlook 365 / 2016 / 2019.

Com duplicar reunions i esdeveniments al vostre calendari dOutlook 2019 / 365 / 2016?

Com duplicar reunions i esdeveniments al vostre calendari dOutlook 2019 / 365 / 2016?

Apreneu a duplicar fàcilment els esdeveniments, les reunions i les cites del calendari d'Outlook a Office 365, 2016 i 2019.

Formularis dOutlook: Com crear formularis que es poden omplir a Microsoft Office 2016 / 2019?

Formularis dOutlook: Com crear formularis que es poden omplir a Microsoft Office 2016 / 2019?

Obteniu informació sobre com podeu dissenyar i crear formularis d'usuari personalitzats d'Outlook.

Com actualitzar el meu correu de la safata dentrada dOutlook quan no sactualitza automàticament?

Com actualitzar el meu correu de la safata dentrada dOutlook quan no sactualitza automàticament?

La safata d'entrada d'Outlook no s'actualitza automàticament? Obteniu informació sobre com podeu actualitzar automàticament la vostra safata d'entrada d'Outlook 365 / 2019 / 2016 / 2013 automàticament.

Com afegir imatges gif al cos o signatura del correu electrònic dOutlook 2016 / 2019?

Com afegir imatges gif al cos o signatura del correu electrònic dOutlook 2016 / 2019?

Obteniu informació sobre com afegir/incrustar i enviar una imatge gif al vostre correu electrònic de sortida d'Outlook 2016 i 2019.

Per què Outlook està fora de línia o desconnectat i com tornar-lo a connectar?

Per què Outlook està fora de línia o desconnectat i com tornar-lo a connectar?

Obteniu informació sobre com diagnosticar i resoldre problemes diferents de desconnexió de clients de Microsoft Outlook a Windows 10.

Com enviar un correu electrònic a Outlook amb VBA?

Com enviar un correu electrònic a Outlook amb VBA?

Apreneu a escriure macros d'Outlook per automatitzar l'enviament de correus electrònics.

Atureu les notificacions del calendari dOutlook 365/2019/2016 per a reunions i cites que apareguin

Atureu les notificacions del calendari dOutlook 365/2019/2016 per a reunions i cites que apareguin

Obteniu informació sobre com desactivar els recordatoris i les notificacions dels calendaris d'Outlook 2016/2019, tant a Windows com a MAC.

Com fer que Microsoft Outlook funcioni més ràpid (versions 2019/365/2016)?

Com fer que Microsoft Outlook funcioni més ràpid (versions 2019/365/2016)?

Obteniu informació sobre com millorar el vostre rendiment d'Outlook.

Com modificar la contrasenya de Hotmail a Windows, telèfon Android, iPhone o iPad?

Com modificar la contrasenya de Hotmail a Windows, telèfon Android, iPhone o iPad?

En aquesta publicació us ajudarà a canviar la contrasenya del vostre compte d'Outlook.com i a mantenir sincronitzat el vostre Windows a tots els vostres dispositius.