Option Explicit
Private Function CreerRendezVous_02(PCalendrier As String, _
PDate As String, _
PHeure As String, _
PDuree As Integer, _
PSubject As String, _
PNotes As String, _
PLieu As String, _
Optional PMinutesRappel As Integer = 0)
On Error GoTo Add_Err
Dim objOutlook As Object
Dim objAppt As Object
Dim olns As Object
Dim MycalendarFolder As Object
Dim MyFolder As Object
Set objOutlook = CreateObject("Outlook.Application")
Set olns = objOutlook.GetNamespace("MAPI")
Set MycalendarFolder = olns.GetDefaultFolder(olFolderCalendar)
If PCalendrier = "" Then
Set MyFolder = MycalendarFolder.Items
Else
Set MyFolder = MycalendarFolder.Folders(PCalendrier).Items
End If
Set objAppt = MyFolder.Add
With objAppt
If PDuree > 0 Then
.Start = PDate & " " & PHeure
.Duration = PDuree
Else
.Start = PDate
.AllDayEvent = True
End If
.Subject = PSubject
.Body = PNotes
.Location = PLieu
If PMinutesRappel > 0 Then
.ReminderMinutesBeforeStart = PMinutesRappel
.ReminderSet = True
End If
.Save
.Close (olSave)
End With
Set objAppt = Nothing
Set objOutlook = Nothing
MsgBox "Rdv ajouté!"
Exit Function
Add_Err:
MsgBox "Error " & Err.Number & vbCrLf & Err.Description
End Function
' PCalendrier : Le nom du calendrier concerné. Passez une chaîne vide pour utiliser le calendrier par défaut
' PDate : La date du rendez vous.
' PHeure: L 'heure du rendez vous.
' PDuree : La durée du rendez vous en minutes. Utilisez 0 pour que le rendez vous dure toute la journée.
' PSubject: L 'objet du rendez vous.
' PNotes : Un court résumé du rendez vous.
' PLieu : Le lieu du rendez vous.
' PMinutesRappel : Le nombre de minutes avant un rappel.
' Ne pas renseigner ce paramètre si vous ne souhaitez pas utiliser le rappel Outlook.
Sub tst()
CreerRendezVous "", Date, _
"14:30", 53, "Test", "Ceci est un test", _
"Gare de l'Est", 5
End Sub