Microsoft Office Online
Iniciar sesión en Mi Office Online (¿Qué es esto?) | Iniciar sesión

 
 
Ayuda y procedimientos
Buscar
Buscar
 
 
 
 
Advertencia: está viendo esta página con una versión de explorador de Web no compatible. Este sitio Web funciona mejor con Microsoft Internet Explorer 6.0 o posterior, Firefox 1.5 o con Netscape Navigator 8.0 o posterior. Obtener más información acerca de los exploradores admitidos.

Versión imprimibleVersión imprimible Marcar y compartirCompartir
Contactes de l'Outlook a Access 2007
 

Publicat: 1 de gener de 2008

Per José Bengoechea Ibaceta (Chea) - MVP Access

Entre tants enginyers, jo em considero un paleta del software. No sóc informàtic ni de professió ni de formació; sóc funcionari, la meva formació és humanística i sóc autodidacte. Tanmateix conec bastant l’ofici a base de molta experiència perquè, durant anys, Access ha estat el meu gran amor, la meva eina en el treballi la meva secretària. En la meva joventut, després d'alguna divagació amb GWBasic, vaig viure un romanç apassionat amb QuickBasic, una relació freda i formal amb dBase, vaig començar a festejar amb VB i, finalment, em vaig casar amb Access.

Aplicaciones
Access 2007

A Access 2007 és molt fàcil afegir un botó a un formulari perquè es puguin agregar contactes des d’Outlook o guardar el registre del nostre formulari com un contacte d’Outlook. N'hi ha prou amb només seguir uns passos.

Generar la taula

La taulaque usem per als contactes ha de tenir unes característiques concretes. Sense entrar ara en detall de quines són, la forma més senzilla d'aconseguir-ho és crear la taulala plantilla "Contactes" en "Plantilles de taula", a la pestanya "Crear", grup "Taules" de la cinta d'opcions.

Principi de la pàgina

Generar el formulari

La taulaes genera automàticament amb tots els camps necessaris. Guardem la taulacom a "Contactes" i, polsant directament en l'opció "Formulari", també de la pestanya "Crear", es genera immediatament, un formulari de "Contactes" complet

Principi de la pàgina

Generar el codi

Ara hem de crear el codi per interactuar amb Outlook. De moment, ens centrarem en "Agregar contacte des d'Outlook" i després només caldrà repetir el procés per "Guardar com a contacte d'Outlook"

Passem el formulari a la vista "Disseny" i afegim un botó. S'obrirà la finestra de l'assistent, però en aquesta ocasió no ens serveix de gaire; és millor establir les propietats manualment. Li canviem el nom, les propietats "Títol", "Organització de peus d'imatge", "Imatge" i estil del fons perquè quedi més maco.

El codi anirà en l'esdeveniment clic del botó

Usar un procediment d'esdeveniment

En la propietat del botó "En fer clic" podem posar [Procediment d'esdeveniment] i després en l'editor de VBA, crear un procediment com aquest:

Private subbtnAgregarOutlook_Click()
DoCmd.RunCommand acCmdAddFromOutlook
End Sub

Usar una macro

El codi és tan senzill, una única línia de codi, que sembla que no val la pena substituir-lo per una macro. Tanmateix, una macro incrustada és una bona alternativa, ja que més endavant, quan copiem i enganxem el nostre botó, també es copiarà i enganxarà la macro que porta incrustada.

Si, en comptes de seleccionar [procediment d'esdeveniment] en la propietat "En fer clic", polsem sobre el botó amb els tres punts que apareix a la dreta i triem el “Generador de macros", només haurem de triar l'acció "Agregar ordre" i l’ordre "Agregar des d'Outlook" per crear una macro incrustada que aconsegueixi el mateix efecte que el codi DoCmd.RunCommand acCmdAddFromOutlook

És a dir, que per agregar un contacte des d'Outlook podem utilitzar el codi

DoCmd.RunCommand acCmdAddFromOutlook
o bé la macro
EjecutarComando AgregarDesdeOutlook

Principi de la pàgina

Provar l'aplicació

Ja només l’hem de provar. Passem a vista formulari, premem el botó i Voilá!

Podem repetir els mateixos passos per al botó "Guardar com a contacte d'Outlook", sabent que en aquest cas el codi seria:

DoCmd.RunCommand acCmdSaveAsOutlookContact
i la macro:
EjecutarComando GuardarComoContactoDeOutlook

Principi de la pàgina

Provar amb una taula diferent

Potser voldrem usar com a contactes una taula que no hem generat amb la plantilla, per exemple, perquè estem aprofitant una aplicació o unes dades antigues. Si hem usat una macro, només cal copiar i enganxar els botons en el vell formulari i, si ho hem fet amb codi, haurem de crear, a més, el codi dels esdeveniments.

És molt senzill i en un instant ja ho estem provant, i... No funciona!

Què passa?

Ja havíem comentat que la taulaha de tenir una característiques concretes que la plantilla ens donava fetes.

D'alguna forma li hem de dir a l'Outlook quins camps de la nostra taula es corresponen amb cada un dels camps de la plantilla. La manera de fer-ho és crear o modificar per a aquesta taula la propietat WSSTemplateID de manera que tingui el valor 105 i, per a cada un dels camps que ho necessitin, la propietat WSSFieldID de manera que indiqui a quin camp de la plantilla correspon.

En Access Team Blog s’explica com modificar aquestes propietats i a la meva pàgina hi ha un complement per fer-ho fàcilment.

Aquestes propietats també serveixen per a més tipus de plantilles que la de contactes. Si el nom comença per WSS és perquè fan referència a plantilles de SharePoint i seran especialment útils en aquest entorn, però tot això és ja matèria suficient per a un altre article.

publicidad