Compartir a través de


Método RecurrencePattern.GetOccurrence (Outlook)

Devuelve una instancia específica del objeto AppointmentItem en la fecha especificada.

Sintaxis

expresión. GetOccurrence( _StartDate_ )

Expresión Variable que representa un objeto RecurrencePattern .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
StartDate Obligatorio Date Un valor de fecha que representa la hora local.

Valor devuelto

Un objeto AppointmentItem que representa la cita concreta de la fecha especificada.

Comentarios

El método GetOccurrence genera un error si no hay ninguna cita de esa serie existe en la fecha especificada.

Cuando se trabaja con elementos de cita periódica, debe liberar todas las referencias anteriores, obtener nuevas referencias al elemento de cita periódica antes de obtener acceso o modificar el elemento y liberar estas referencias tan pronto como haya terminado y haya guardado los cambios. Esta práctica se aplica al objeto AppointmentItem periódico y cualquier objeto RecurrencePattern o de excepción. Para liberar una referencia en Visual Basic para Aplicaciones (VBA) o Visual Basic, establezca ese objeto existente en nada. En C#, liberar explícitamente la memoria para ese objeto. Para obtener un ejemplo de código, vea el tema para el objeto AppointmentItem.

Tenga en cuenta que incluso después de liberar la referencia e intentar obtener una nueva, si aún hay una referencia activa a uno de los objetos anteriores, mantenida por otro complemento o Outlook, la nueva referencia puede apuntar a una copia obsoleta del objeto. Por lo tanto, es importante liberar las referencias cuando termine con la cita periódica.

Ejemplo:

En este ejemplo de Visual Basic para aplicaciones (VBA) se utiliza el método CreateItem para crear un objeto AppointmentItem. Se obtiene el objeto RecurrencePattern de este elemento mediante el método GetRecurrencePattern. Al establecer las propiedades de RecurrencePattern, RecurrenceType, PatternStartDate y PatternEndDate, las citas ahora son una serie periódica que se produce en una programación diaria durante el período de un año.

Cuando se obtiene una instancia de esta cita periódica mediante el método GetOccurrence y se modifican las propiedades de esta instancia, se crea un objeto Exception. Esta excepción a la serie de citas se obtiene mediante el método GetRecurrencePattern para tener acceso a la colección Exceptions asociada a esta serie. Cuadros de mensaje muestran el asunto y OriginalDate originales de esta excepción a la serie de citas y la fecha actual, el tiempo y el asunto de esta excepción.

Public Sub cmdExample() 
 
 Dim myApptItem As Outlook.AppointmentItem 
 
 Dim myRecurrPatt As Outlook.RecurrencePattern 
 
 Dim myNamespace As Outlook.NameSpace 
 
 Dim myFolder As Outlook.Folder 
 
 Dim myItems As Outlook.Items 
 
 Dim myDate As Date 
 
 Dim myOddApptItem As Outlook.AppointmentItem 
 
 Dim saveSubject As String 
 
 Dim newDate As Date 
 
 Dim myException As Outlook.Exception 
 
 
 
 Set myApptItem = Application.CreateItem(olAppointmentItem) 
 
 myApptItem.Start = #2/2/2003 3:00:00 PM# 
 
 myApptItem.End = #2/2/2003 4:00:00 PM# 
 
 myApptItem.Subject = "Meet with Boss" 
 
 
 
 'Get the recurrence pattern for this appointment 
 
 'and set it so that this is a daily appointment 
 
 'that begins on 2/2/03 and ends on 2/2/04 
 
 'and save it. 
 
 Set myRecurrPatt = myApptItem.GetRecurrencePattern 
 
 myRecurrPatt.RecurrenceType = olRecursDaily 
 
 myRecurrPatt.PatternStartDate = #2/2/2003# 
 
 myRecurrPatt.PatternEndDate = #2/2/2004# 
 
 myApptItem.Save 
 
 
 
 'Access the items in the Calendar folder to locate 
 
 'the master AppointmentItem for the new series. 
 
 Set myNamespace = Application.GetNamespace("MAPI") 
 
 Set myFolder = myNamespace.GetDefaultFolder(olFolderCalendar) 
 
 Set myItems = myFolder.Items 
 
 Set myApptItem = myItems("Meet with Boss") 
 
 
 
 'Get the recurrence pattern for this appointment 
 
 'and obtain the occurrence for 3/12/03. 
 
 myDate = #3/12/2003 3:00:00 PM# 
 
 Set myRecurrPatt = myApptItem.GetRecurrencePattern 
 
 Set myOddApptItem = myRecurrPatt.GetOccurrence(myDate) 
 
 
 
 'Save the existing subject. Change the subject and 
 
 'starting time for this particular appointment 
 
 'and save it. 
 
 saveSubject = myOddApptItem.Subject 
 
 myOddApptItem.Subject = "Meet NEW Boss" 
 
 newDate = #3/12/2003 3:30:00 PM# 
 
 myOddApptItem.Start = newDate 
 
 myOddApptItem.Save 
 
 
 
 'Release references to the appointment series 
 
 Set myApptItem = Nothing 
 
 Set myRecurrPatt = Nothing 
 
 
 
 'Get the recurrence pattern for the master 
 
 'AppointmentItem. Access the collection of 
 
 'exceptions to the regular appointments. 
 
 Set myItems = myFolder.Items 
 
 Set myApptItem = myItems("Meet with Boss") 
 
 
 
 Set myRecurrPatt = myApptItem.GetRecurrencePattern 
 
 Set myException = myRecurrPatt.Exceptions.Item(1) 
 
 
 
 'Display the original date, time, and subject 
 
 'for this exception. 
 
 MsgBox myException.OriginalDate & ": " & saveSubject 
 
 
 
 'Display the current date, time, and subject 
 
 'for this exception. 
 
 MsgBox myException.AppointmentItem.Start & ": " & _ 
 
 myException.AppointmentItem.Subject 
 
End Sub

Consulte también

Objeto RecurrencePattern

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.