FernandoMora.es articulo_excel_creartareaoutlook.doc Crear una tarea Outlook desde Excel Se puede crear una tarea en blanco para que el usuario introduzca los datos que desee o una tarea con los datos rellenos automáticamente. En ambos casos, se utilizará el VBA: se creará un módulo y en él un procedimiento Sub para cada caso. Una vez abierta la hoja Excel de trabajo, se tienen que seguir los siguientes pasos: • Abrir el editor de VBA. o Se pulsa [Alt]+[F11]. • Crear un nuevo módulo. o En el menú Insertar, se hace selecciona el elemento Módulo. • Añadir la referencia a la librería de objetos del Outlook. o En el menú Herramientas, se selecciona el elemento Referencias y, en la ventana que se muestra a continuación, se marca la casilla correspondiente a Microsoft Outlook n Object Library (donde n depende de la versión de Microsoft Office instalada). Crear una tarea en blanco Una vez realizados los pasos indicados en la introducción, para la creación de una tarea en blanco se programa un procedimiento Sub cuya funcionalidad se recoge en el siguiente seudocódigo: Crear un objeto que haga referencia al Outlook. Crear un objeto que haga referencia a un elemento de tipo tarea. Visualizar la ficha de la tarea. Eliminar la referencia al elemento de tipo tarea. Eliminar la referencia al Outlook. El procedimiento se va a denominar crearTareaEnBlanco. En la ventana de código se teclean las intrucciones VBA que se corresponden al seudocódigo: Sub crearTareaEnBlanco() Dim objectOutlook As Object Dim objectTarea As Object Set objectOutlook = CreateObject("Outlook.Application") Set objectTarea = objectOutlook.CreateItem(olTaskItem) 26/02/2014 12:15:00 Página 1 de 4 FernandoMora.es articulo_excel_creartareaoutlook.doc objectTarea.Display Set objectTarea = Nothing Set objectOutlook = Nothing End Sub Una vez escrito el código del procedimiento Sub hay que volver a la hoja y asignarlo, por ejemplo, a un botón para que se pueda ejecutar. Para ello se tienen que seguir los siguientes pasos: • Cerrar el editor de VBA. o Se pulsa [Alt]+[Q]. • Agregar la barra de herramientas Formularios si no está visible. o En el menú Ver, se selecciona el elemento Barra de Herramientas y en él se marca Formularios. • Añadir un botón que llame al procedimiento crearTareaEnBlanco. o En la barra de herramientas Formularios, se hace clic en el elemento Botón. o En la hoja de cálculo, se arrastra el control hasta que tenga el tamaño que desee. o En la ventana Asignar macro que aparece a continuación, se selecciona crearTareaEnBlanco. o Sobre el botón, se hace click derecho y se selecciona el elemento Modificar texto en el menú y se escribe Crear tarea Outlook en blanco. Crear una tarea con datos rellenos de forma automática Una vez realizados los pasos indicados en la introducción, para la creación de una tarea con datos rellenos de forma automática a partir de información existente en la hoja se programa un procedimiento Sub cuya funcionalidad se recoge en el siguiente seudocódigo: Crear un objeto que haga referencia al Outlook. Crear un objeto que haga referencia a un elemento de tipo tarea. Asignar el contenido de la celda C8 en el asunto. Asignar el contenido de la celda C9 en el cuerpo. Asignar el contenido de la celda C10 en el vencimiento. Salvar la tarea. Eliminar la referencia al elemento de tipo tarea. Eliminar la referencia al Outlook. 26/02/2014 12:15:00 Página 2 de 4 FernandoMora.es articulo_excel_creartareaoutlook.doc El procedimiento se va a denominar crearTareaRellena. En la ventana de código se teclean las intrucciones VBA que se corresponden al seudocódigo: Sub crearTareaRellena() Dim objectOutlook As Object Dim objectTarea As Object Set objectOutlook = CreateObject("Outlook.Application") Set objectTarea = objectOutlook.CreateItem(olTaskItem) With objectTarea .Subject = Cells(8, 3).Value .Body = Cells(9, 3).Value .DueDate = Cells(10, 3).Value .Save End With Set objectTarea = Nothing Set objectOutlook = Nothing End Sub Una vez escrito el código del procedimiento Sub hay que volver a la hoja y asignarlo, por ejemplo, a un botón para que se pueda ejecutar y teclear los datos con los que se rellena automáticamente la tarea. Para ello se tienen que seguir los siguientes pasos: • Cerrar el editor de VBA. o Se pulsa [Alt]+[Q]. • Agregar la barra de herramientas Formularios si no está visible. o En el menú Ver, se selecciona el elemento Barra de Herramientas y en él se marca Formularios. • Añadir un botón que llame al procedimiento crearTareaRellena. o En la barra de herramientas Formularios, se hace clic en el elemento Botón. o En la hoja de cálculo, se arrastra el control hasta que tenga el tamaño que desee. o En la ventana Asignar macro que aparece a continuación, se selecciona crearTareaRellena. o Sobre el botón, se hace click derecho y se selecciona el elemento Modificar texto en el menú y se escribe Crear tarea rellena con datos adjuntos. o Teclear los datos que se rellenan automáticamente en la tarea. o En la celda B8 se teclea Asunto: y en la C8 el texto correspondiente, por ejemplo Enviar a Dirección de Zona el expediente 8974646465. 26/02/2014 12:15:00 Página 3 de 4 FernandoMora.es articulo_excel_creartareaoutlook.doc o En la celda B9 se teclea Cuerpo: y en la C9 el texto correspondiente, por ejemplo Hay que enviar a Dirección de Zona el expediente 8974646465 de D. Jesús Pérez correspondiente a un préstamo joven de 100.000 €. o En la celda B10 se teclea Vencimiento: y en la C10 la fecha correspondiente, por ejemplo 31-07-2006. 26/02/2014 12:15:00 Página 4 de 4