Supprimer un RDV dans un calendrier Outlook partagé
F
Bonjour,
En m'aidant de codes trouvés sur des forums j'ai réussi à créer une macro qui me permet de créer un RDV Outlook sur le calendrier de la personne souhaitée ( grâce aux calendriers partagés).
Je cherche maintenant à pouvoir supprimer ce RDV selon 3 conditions : Le nom de la personne , la date et le sujet du RDV.
Toujours en m'aidant de macro trouvées sur internet j'ai commencé à faire la macro suivante mais lorsque je l'exécute j'obtiens l'erreur "Objet Requis" et mes peu de compétences en VBA ne me permettent pas de comprendre d'où vient l'erreur.
'procédure pour supprimer un rdv existant
Sub supprimeRDVCalendrier()
'déclaration des variables
Dim objApp As Outlook.Application
Dim objAppt As Outlook.AppointmentItem
Dim objNS As Outlook.Namespace
Dim objFolder As Outlook.MAPIFolder
'on déclare un objet collection qui va contenir tous les rdv correspondat aux critères de filtre
Dim collectionAppointments As Outlook.Items
Dim sFilter As String
Dim strName As String
Dim strIncident As String
Dim strMachine As String
Dim strAtelier As String
Dim dteDebut As Date
'gestion d'erreurs
On Error GoTo Err_Execution
'on crée ensuite les objets
Set objApp = CreateObject("Outlook.Application")
Set objNS = objApp.GetNamespace("MAPI")
Set objRecip = objDummy.Recipients(strName)
Set objDummy = objApp.CreateItem(olMailItem)
Set objAppt = objFolder.Items
'définit le dossier calendrier
Set objFolder = objNS.GetSharedDefaultFolder(objRecip, olFolderCalendar)
'on définit les critères de filtre
sFilter = "[Start] = ActiveCell'"
strIncident = ActiveCell.Offset(0, -9).Value
strMachine = ActiveCell.Offset(0, -5).Value
strAtelier = ActiveCell.Offset(0, -6).Value
strName = ActiveCell.Offset(0, -1).Value
'on recupère tous les rdv correspondant aux critères avec la méthode restrict
Set collectionAppointments = objFolder.Items.Restrict(sFilter)
'boucle sur tous les rdv trouvés
For Each objAppt In collectionAppointments
'si le sujet correspond on supprime le rdv
If objAppt.Subject = "Inter n°" & strIncident & " " & strMachine Then
objAppt.Delete
End If
Next
'Libération des variables.
Set objAppt = Nothing
Set objApp = Nothing
Fin_Execution:
Exit Sub
Err_Execution:
MsgBox Err.Description, vbExclamation
Resume Fin_Execution
End SubJe vous remercie d'avance pour votre aide.