Compartilhar via


Criar um compromisso recorrente que ocorre a cada 2 anos

Este tópico mostra um exemplo de código do Visual Basic for Applications (VBA) que cria um compromisso que ocorre no padrão a seguir:

  • Tem início às 14h00 e término às 17h00.

  • Ocorre na última segunda-feira de junho.

  • Ocorre a cada dois anos para três instâncias.

  • Entra em vigor em 1º de junho de 2009.

O exemplo de código resulta em um compromisso recorrente das 14h00 às 17h00, na última segunda de junho em 2009 (29 de junho de 2009), em 2011 (27 de junho de 2011) e em 2013 (24 de junho de 2013). O compromisso é salvo no calendário padrão e então é exibido.

Sub RecurringYearNth() 
 Dim oAppt As AppointmentItem 
 Dim oPattern As RecurrencePattern 
 Set oAppt = Application.CreateItem(olAppointmentItem) 
 Set oPattern = oAppt.GetRecurrencePattern 
 With oPattern 
 ' Appointment occurs every n-th year (with n indicated by the Interval property). 
 .RecurrenceType = olRecursYearNth 
 ' Appointment occurs on Monday. 
 .DayOfWeekMask = olMonday 
 ' Appointment occurs in June. 
 .MonthOfYear = 6 
 ' Appointment occurs on the 5th or last Monday (per the DayOfWeekMask property). 
 .Instance = 5 
 ' Appointment occurs three times. 
 .Occurrences = 3 
 ' Appointment lasts for 180 minutes each time. 
 .Duration = 180 
 ' Appointment becomes effective on June 1, 2009. 
 .PatternStartDate = #6/1/2009# 
 ' Appointment starts at 2 P.M. 
 .StartTime = #2:00:00 PM# 
 ' Appointment ends at 5 P.M. 
 .EndTime = #5:00:00 PM# 
 ' Appointment recurs every 2 years (per a RecurrenceType of olRecursYearNth). 
 .Interval = 2 
 End With 
 oAppt.Subject = "Recurring every 2 years YearNth Appointment" 
 oAppt.Save 
 oAppt.Display 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.