Asunto: Obtener datos email actual de Outlook desde Visual Basic
Estoy desarrollando una aplicación para la gestión de tareas (incidencias), quisiera saber si hay alguna posibilidad de obtener los datos (asunto y cuerpo del mensaje) del correo electrónico que tengamos seleccionado actualmente en Outlook desde mi aplicación Visual Basic.
Lo que quiero es añadir una nueva opción a mi aplicación Visual Basic que me permita crear una incidencia a partir de los datos del email seleccionado actualmente en Outlook, pues muchas de las incidencias llegan por email.
¿es posible?
Publicado:
Vie Sep 11, 2009 7:35 am
alonsojpd Administrador/Moderador
Registrado: Sep 16, 2003 Mensajes: 2687
Asunto: Re: Obtener datos email actual de Outlook desde Visual Basic
Anuncios
varios escribió:
Estoy desarrollando una aplicación para la gestión de tareas (incidencias), quisiera saber si hay alguna posibilidad de obtener los datos (asunto y cuerpo del mensaje) del correo electrónico que tengamos seleccionado actualmente en Outlook desde mi aplicación Visual Basic.
Lo que quiero es añadir una nueva opción a mi aplicación Visual Basic que me permita crear una incidencia a partir de los datos del email seleccionado actualmente en Outlook, pues muchas de las incidencias llegan por email.
¿es posible?
Sí es posible, aquí te mostramos un ejemplo que obtiene los datos y, además, te muestra los datos en función del tipo de objeto que hayas seleccionado (tarea, nota, cita, contacto, email):
Código:
Option Explicit
Sub mostrarInformacion(oItem As Object)
Dim tipoObjetoSeleccionado As String
Dim objetoCita As Outlook.AppointmentItem
Dim objetoContacto As Outlook.ContactItem
Dim objetoCorreo As Outlook.MailItem
Dim oJournalItem As Outlook.JournalItem
Dim objetoNota As Outlook.NoteItem
Dim objetoTarea As Outlook.TaskItem
tipoObjetoSeleccionado = oItem.MessageClass
If (tipoObjetoSeleccionado = "IPM.Appointment") Then 'Cita
Set objetoCita = oItem
MsgBox objetoCita.Subject & vbCrLf & objetoCita.Start
ElseIf (tipoObjetoSeleccionado = "IPM.Contact") Then 'Contacto
Set objetoContacto = oItem
MsgBox objetoContacto.FullName & vbCrLf & objetoContacto.Email1Address
ElseIf (tipoObjetoSeleccionado = "IPM.Note") Then 'Correo
Set objetoCorreo = oItem
MsgBox objetoCorreo.Subject & vbCrLf & objetoCorreo.Body
ElseIf (tipoObjetoSeleccionado = "IPM.Activity") Then 'Diario
Set oJournalItem = oItem
MsgBox oJournalItem.Subject & vbCrLf & oJournalItem.Actions
ElseIf (tipoObjetoSeleccionado = "IPM.StickyNote") Then 'Notas
Set objetoNota = oItem
MsgBox objetoNota.Subject & vbCrLf & objetoNota.Body
ElseIf (tipoObjetoSeleccionado = "IPM.Task") Then 'Tarea
Set objetoTarea = oItem
MsgBox objetoTarea.DueDate & vbCrLf & objetoTarea.PercentComplete
End If
End Sub
Private Sub btObtener_Click()
Dim objetoAplicacion As New Outlook.Application
Dim objetoExplorador As Outlook.Explorer
Dim objetoSeleccion As Outlook.Selection
Dim objetoElementoActual As Object
Dim i As Integer
Set objetoExplorador = objetoAplicacion.ActiveExplorer
Set objetoSeleccion = objetoExplorador.Selection
For i = 1 To objetoSeleccion.Count
Set objetoElementoActual = objetoSeleccion.Item(i)
mostrarInformacion objetoElementoActual
Next i
End Sub
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A