Tecnología

Inicio

Cómo obtener contactos globales en VBA de Outlook

Microsoft Outlook almacena los contactos para su uso. La lista global de direcciones (GAL) contiene información de contacto para los usuarios en el servidor de Microsoft Exchange. De acuerdo con Mike Caraker, Director de TI de la MGF arquitectos, puede utilizar código de Visual Basic para Aplicaciones (VBA) para sincronizar nuestro GAL a una subcarpeta en sus contactos. Por sincronizar esta carpeta, que se tire de nuevos contactos, actualizar los ya existentes y eliminar viejos contactos que están fuera de fecha. Debe habilitar las macros dentro de su Microsoft Outlook para utilizar el código de VBA.

Instrucciones

Preparación para la Entrada de código

1 Abra Microsoft Outlook.

2 Presione Alt + F11 para abrir el Editor de Visual Basic.

3 Haga clic en "Insertar" y seleccione "Procedimiento".

4 Tipo "CreateSubFolder" en el campo "Nombre".

5 Seleccione "Sub" de los botones de selección "Tipo" y haga clic en "Aceptar".

Entrando en el Código

6 Mover el cursor a la segunda línea. Perspectivas generará la primera línea de forma automática. Se debería leer "Sub CreateSubFolder ()".

7 Tipo "On Error Resume Next" y pulse Enter.

8 Tipo "Dim GAL Como AddressList, i como número entero, objContact Como ContactItem" y pulse Enter.

9 Tipo "Establecer objOutlook = CreateObject (" Outlook.Application ")" y pulse Enter.

10 Tipo "Establecer myNameSpace = objOutlook.GetNamespace (" MAPI ")" y pulse Intro.

11 Tipo "Establecer miCarpeta = myNameSpace.GetDefaultFolder (olFolderContacts)" y pulse Enter.

12 Tipo "Establecer MyNewFolder = myFolder.Folders (" global ")" y pulse Enter.

13 Tipo "myNewFolder.Delete" y pulse Enter.

14 Tipo "Establecer MyNewFolder = myFolder.Folders.Add (" global ")" y pulse Enter.

15 Tipo "Establecer MyNewFolder = myFolder.Folders (" global ")" y pulse Enter.

dieciséis Tipo "Establecer GAL = myNameSpace.AddressLists (" Lista global de direcciones ")" y pulse Enter.

17 Tipo "GAL.AddressEntries.Sort" y pulse Enter.

18 Tipo "Para i = 1 Para GAL.AddressEntries.Count - 1" y pulse Intro.

19 Tipo "Establecer objContact = myNewFolder.Items.Add (" IPM.Contact ")" y pulse Enter.

20 Tipo "objContact.FirstName = (GAL.AddressEntries.Item (i) .GetExchangeUser.FirstName)" y pulse ENTER.

21 Tipo "objContact.LastName = (GAL.AddressEntries.Item (i) .GetExchangeUser.LastName)" y pulse ENTER.

22 Tipo "objContact.Save" y pulse Enter.

23 Tipo "Siguiente i" y pulse Enter.

24 Compruebe que la última línea dice "End Sub". Perspectivas generará esta línea para usted.

25 Haga clic en "Archivo" y selecciona "Guardar Proyecto1."

26 Cierre el Editor de Visual Basic.

Ejecución del Código

27 Haga clic en la pestaña "desarrollador".

28 Haga clic en "Macros".

29 Seleccione "Project1.CreateSubFolder." El código se ejecutará ahora. Esto puede tardar un minuto o más, dependiendo del número de contactos globales.

Consejos y advertencias

  • Se pueden añadir más campos, como el teléfono o la dirección de correo electrónico de negocio secundaria, con el código para obtener más información de la GAL.
  • Asegúrese de que utiliza la capitalización y la puntuacion como se muestra porque se trata de una parte importante de la sintaxis del código VBA.
  • El código de este artículo fue diseñado por Mike Caraker y se reproduce aquí con su permiso. Puede ser utilizado para la programación, pero no debe ser reproducido sin su permiso expreso.