jueves, 10 de julio de 2014

Macro Exporta de excel a Outlook Calendario

Este pequeño macro genera una varias tareas de Excel a el calendario de Outlook.
para esto tendremos que agregar la referencia al api de Outlook. en herramientas/referencia con esto podremos trabajar con Outlook.apliccation y todos sus objetos.




Sub CREARTAREA()
   Dim ol As Outlook.Application
  ' Dim NewTask As Outlook.TaskItem/* Objeto de lista de tarea*/
   Dim newtask As Outlook.AppointmentItem ' objeto de tarea en calendario
   Dim i As Integer ' variable contador para ciclo
   ' Set the Application object.
   Set ol = New Outlook.Application ' Crea un set de outlook
   ' Create a new standard task.
   ' Display the new task form so the user can fill it out.
   For i = 10 To 1 Step -1 ' Determinamos un ciclo para llenar nuestro calendario con tareas de excel
    Set newtask = ol.CreateItem(olAppointmentItem) ' Crea el objeto del calendario
      newtask.Subject = Sheets(1).Cells(i, "A").Value 'Agregamos la linea que contiene el asunto de tarea
      newtask.Body = "esto es una prueba" ' Cuerpo de la tarea
      'newtask.Display (evento que funciona para que despliegue el formato de calendario, o tarea)
      newtask.Start = Sheets(1).Cells(i, "B").Value ' Agrega campo fecha con hora del evento en calendario
      'newtask.End = Sheets(1).Cells(i, "B").Value
      newtask.Duration = 60 ' duracion del evento en minutos
      'newtask.End = Now (tiempo de terminacion del evento)
      newtask.Save 'evento que guarda la tarea
      newtask.ClearRecurrencePattern
    Set newtask = Nothing 'Vaciamos el objeto para que se pueda volver a utilizar
  Next i 'Volvemos al ciclo
End Sub

Espero que les pueda servir de ayuda.