Duda - creación de una tarea de outlook desde una lista de excel
publicado
Buen día:
Estoy tratando de hacer que en base a una lista (Columna y su estatus (Columna C), se creen tareas nuevas en Outlook, para dar seguimiento al cumplimiento de dicha lista.
Para lo cual tengo el siguiente código (extracto de varias muestras que encontré en la web, solo por respeto a los autores):
Sub Tarea()
'
' Tarea Macro
' Automatizar la creacion de tareas
'
' Acceso directo: Ctrl+Mayús+T
Dim objectOutlook As Object, objectTarea As Object
Dim f As Range
Set objectOutlook = CreateObject("Outlook.Application")
Set objectTarea = objectOutlook.CreateItem(olTaskItem)
Range("C11:C64").Select
For Each f In Selection.Cells
If f.Value = 1 Then
With objectTarea
.Subject = Cells(1, 5).Value & " - " & Cells(f.Row, 2).Value 'Título de la tarea
.Body = Cells(f.Row, 5).Value 'Detalle de la tarea
.ReminderSet = True 'Recordar True/False
.ReminderTime = Cells(f.Row, 10).Value 'Recordar el siguiente dia habil
.DueDate = Cells(f.Row, 10).Value 'Fecha tarea
.Save
End With
End If
Next
Set objectTarea = Nothing
Set objectOutlook = Nothing
End Sub
Conclusión: La macro corre: toma la decisión lógica (if) de manera correcta y crea la tarea en outlook , solo que se crea UNA sola tarea producto del ciclo (for), en lugar de una tarea agendada, para cada una de las actividades con estatus 1.
Ejecutando paso a paso la macro, se puede apreciar que si crea cada tarea, pero solo se conserva en outlook, la ultima creada del ciclo.
Me pueden ayudar a corregir este código o indicarme cual es mi error.
Gracias.
Featured Replies
Archivado
Este tema está ahora archivado y está cerrado a más respuestas.
Buen día:
Estoy tratando de hacer que en base a una lista (Columna
y su estatus (Columna C), se creen tareas nuevas en Outlook, para dar seguimiento al cumplimiento de dicha lista.
Para lo cual tengo el siguiente código (extracto de varias muestras que encontré en la web, solo por respeto a los autores):
Sub Tarea()
'
' Tarea Macro
' Automatizar la creacion de tareas
'
' Acceso directo: Ctrl+Mayús+T
Dim objectOutlook As Object, objectTarea As Object
Dim f As Range
Set objectOutlook = CreateObject("Outlook.Application")
Set objectTarea = objectOutlook.CreateItem(olTaskItem)
Range("C11:C64").Select
For Each f In Selection.Cells
If f.Value = 1 Then
With objectTarea
.Subject = Cells(1, 5).Value & " - " & Cells(f.Row, 2).Value 'Título de la tarea
.Body = Cells(f.Row, 5).Value 'Detalle de la tarea
.ReminderSet = True 'Recordar True/False
.ReminderTime = Cells(f.Row, 10).Value 'Recordar el siguiente dia habil
.DueDate = Cells(f.Row, 10).Value 'Fecha tarea
.Save
End With
End If
Next
Set objectTarea = Nothing
Set objectOutlook = Nothing
End Sub
Conclusión: La macro corre: toma la decisión lógica (if) de manera correcta y crea la tarea en outlook , solo que se crea UNA sola tarea producto del ciclo (for), en lugar de una tarea agendada, para cada una de las actividades con estatus 1.
Ejecutando paso a paso la macro, se puede apreciar que si crea cada tarea, pero solo se conserva en outlook, la ultima creada del ciclo.
Me pueden ayudar a corregir este código o indicarme cual es mi error.
Gracias.