RdV dans Outlook

Résolu
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006 - 28 mars 2006 à 18:48
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006 - 12 avril 2006 à 12:49
Bonjour,

J'ai réussi à ajouter des RdV dans Outlook via Access mais je n'arrive pas à les supprimer !!!

Quelqu'un pourait-il m'aider ?

Merci d'avance.

18 réponses

michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
28 mars 2006 à 20:45
rebonsoir

ce n'etait qu'un exemple ...

tu peux l'adapter pour boucler sur les RDV et les supprimer de façon conditionnelle


cette adaptation supprime un RDV si le sujet est "MissionX"

Set OlMapi = OlApp.GetNamespace("MAPI")
Set OlFolder = OlMapi.GetDefaultFolder(olFolderCalendar)
Set OlItems = OlFolder.Items

For Each OlAppointment In OlItems
If OlAppointment.Subject = "MissionX" Then
OlAppointment.Delete
Exit Sub
End If
Next

bonne soiree
michel
3
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
28 mars 2006 à 20:03
bonsoir

j'espere que cet exemple pourra t'aider

'nécéssite d'activer la référence Microsoft Outlook 10.0 Object Library
Dim OlApp As New Outlook.Application
Dim OlMapi As Outlook.NameSpace
Dim OlFolder As Outlook.MAPIFolder
Dim OlItems As Outlook.Items
Dim OlAppointment As Outlook.AppointmentItem

Set OlMapi = OlApp.GetNamespace("MAPI")
Set OlFolder = OlMapi.GetDefaultFolder(olFolderCalendar)
Set OlItems = OlFolder.Items

Set OlAppointment = OlItems.Item(1)
'Suppression du premier RDV dans le calendrier :
'1 étant le 1er rdv par ordre d'index du calendrier
'l'index correspond à l'odre de creation et non par ordre de date
OlAppointment.Delete

bonne soiree
michel
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
28 mars 2006 à 20:13
Bonsoir,

Merci beaucoup, mais je souhaite supprimer un rdv bien particulier, les rdv ajoutés sont des "missions" de mon travaille, je dois donc pouvoir en supprimer un en particulier lorsque mon emploi du temps change...
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
28 mars 2006 à 20:15
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
28 mars 2006 à 20:28
Pour info voici le code que j'utilise pour inséré un rdv :

Private Sub AjoutRV_Click()
On Error GoTo AjoutRV_Err
' Enregistrer d'abord pour s'assurer que les champs requis sont remplis.
DoCmd.RunCommand acCmdSaveRecord
' Quitter la procédure si le rendez-vous a été ajouté à Outlook.
If Me!AjoutéàOutlook = True Then
MsgBox " Ce rendez-vous a déjà été ajouté dans Microsoft Outlook "
Exit Sub
' Ajouter un nouveau rendez-vous.
Else
Dim outobj As outlook.Application
Dim outappt As outlook.AppointmentItem
Set outobj = CreateObject("outlook.application")
Set outappt = outobj.CreateItem(olAppointmentItem)
With outappt
.Start = Me!APPOINTMENT
.DURATION = Me!DURATION / 60
.Subject = Me!S_NAME
.Body = "Case : " & Me!ID_NUMBER & " Générix : " & Me!X_COMMAND_ID & vbCrLf & "Contact : " & Me!S_LAST_NAME & " " & Me!S_FIRST_NAME & vbCrLf & "Tél : " & Me!PHONE & " Mob : " & Me!X_MOBILE_PHONE & vbCrLf & "Type : " & Me!X_CATEGORY_OF_WORK & " " & Me!S_TITLE & vbCrLf & "ASI : " & Me!S_X_DESCRIPTION_FR & " " & Me!S_SERIAL_NO & vbCrLf & vbCrLf & Me!CASE_HISTORY & vbCrLf & "RdV ajouté par le Module de Synchro 1.4"
.Location = Me!ADDRESS & " " & Me!ADDRESS_2 & " " & Me!ZIPCODE & " " & Me!S_CITY
.Categories = "Professionnel"
.ReminderSet = False
.Save
End With
End If
' Libérez la variable objet Outlook.
Set outobj = Nothing
' Définir l'indicateur AjoutéàOutlook, enregistrer, afficher un message.
Me!AjoutéàOutlook = True
DoCmd.RunCommand acCmdSaveRecord
MsgBox " Rendez-vous ajouté ! "
Exit Sub
AjoutRV_Err:
MsgBox " Erreur " & Err.Number & vbCrLf & Err.Description
Exit Sub
End Sub
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
29 mars 2006 à 17:04
Bonjour

C'est super, merci de ton aide, avec quelques modifications ça fonctionne (enfin !) je me serai pris la tete pendant longtemps pour ça !

à la prochaine !
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
29 mars 2006 à 18:14
Re bonjour

Chose trés étrange : les RdV que j'arrive à enlever sont uniquement les RdV fixés à 09:00:00 heure

Trés étrange non ?

Tu sais d'où ça peut venir ?

Voici le code au cas où :


Private Sub Commande62_Click()
On Error GoTo Err_Commande62_Click


Dim OlApp As New outlook.Application
Dim OlMapi As outlook.NameSpace
Dim OlFolder As outlook.MAPIFolder
Dim OlItems As outlook.Items
Dim OlAppointment As outlook.AppointmentItem

Set OlMapi = OlApp.GetNamespace("MAPI")
Set OlFolder = OlMapi.GetDefaultFolder(olFolderCalendar)
Set OlItems = OlFolder.Items

For Each OlAppointment In OlItems
If OlAppointment.Start = Me!APPOINTMENT Then
OlAppointment.Delete
Me!AjoutéàOutlook = False
DoCmd.RunCommand acCmdSaveRecord
MsgBox " Rendez-vous supprimé ! "
End If

Set OlApp = Nothing
Next
Exit Sub

Exit_Commande62_Click:
Exit Sub


Err_Commande62_Click:
MsgBox Err.Description
Resume Exit_Commande62_Click

Le format de APPOINTMENT est jj/mm/aaa hh:mm:ss

merci
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
29 mars 2006 à 18:22
bonsoir

à quoi correspond Me!APPOINTMENT ?

bonne soiree
michel
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
29 mars 2006 à 18:26
Bonsoir,

ça correspond à la date et l'heure du RdV affiché sur le formulaire d'access

Me pour la ligne de donnée active et APPOINTEMENT la valeur
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
29 mars 2006 à 18:40
rebonsoir

verifie que ta requete ne renvoie pas toujours la meme heure (09:00:00) ,car à mon avis , le probleme vient de là

bonne soiree
michel
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
29 mars 2006 à 18:49
rerebonsoir

la requete ?? quelle requete ??

Appointement est une donnée fixe dans la table !

je ne comprends pas là ! (déja que je comprends pas beaucoup vb... )

en tout cas, merci pour ta patience et tes réponses rapides

à bientot
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
29 mars 2006 à 19:20
Alors là je comprends plus rien : quand je change de critère pour la suppression en mettant le sujet, même topo : les RdV fixés à 09:00:00 heure se retirent les autres non !

c'est un truc de fou !
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
29 mars 2006 à 19:27
bonsoir

excuse moi je me suis mal exprimé :

que contient Me!APPOINTMENT ?


La propriété Start ( If OlAppointment.Start ...) renvoie ou définit une valeur de type Date qui indique la date et l'heure de début du rendez-vous

Me!APPOINTMENT doit donc correspondre à un format de ce type : #8/2/2004 11:30:00 AM#

bonne soiree
michel
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
29 mars 2006 à 19:43
bonsoir,

Je comprend mieux pourquoi ça marche pas : AM/PM or dans appointement c'est sous la forme : 29/03/2006 14:00:00

y a-t-il moyen de le transformer en valeur sans AM/PM ?

merci
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
29 mars 2006 à 20:10
bonsoir

sans garantie , tu peux essayer et adapter ces 2 synthaxes (testé avec Excel2002)

If OlAppointment.Start = Format(Me!APPOINTMENT, "[$-409]d/m/yy h:mm AM/PM;@") Then

ou


If OlAppointment.Start = Format(Me!APPOINTMENT, "d/m/yy h:mm AM/PM;@") Then

bonne soiree
michel
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
30 mars 2006 à 21:43
bonsoir,

Ces "format" permet d'avoir des heures sous le format 24H ???

Merci pour toutes tes réponses,

bonne soirée
0
michelxld Messages postés 402 Date d'inscription vendredi 6 août 2004 Statut Membre Dernière intervention 12 octobre 2008 32
30 mars 2006 à 22:04
bonsoir

Dans cet exemple , la fonction Format transforme Me!APPOINTMENT au format Date AM/PM , pour qu'il puisse etre comparé au format stantard d'outlook

sinon tu pourrais aussi essayer un format de ce type

If Format(OlAppointment.Start, "dd/mm/yyyy h:mm;@") = Me!APPOINTMENT Then

bonne soirée
michel
0
coati94 Messages postés 13 Date d'inscription lundi 20 février 2006 Statut Membre Dernière intervention 12 avril 2006
12 avril 2006 à 12:49
Bonjour,
Excuse pour le moment de silence, j'étais occupé à autre chose,
Je te remercie pour les info, le coup du format ne fonctionne pas mais j'ai contournée le problème en modifiant les données dans le sujet, je me pencherai sur le sujet + tard.

Par contre, si tu sais comment envoyer ces mêmes rdv dans lotus notes, l'info serait la bienvenue, car je ne trouve pas ! (ni l'envoi ni la suppéssion !)

A + tard, et encore merci,

Romain.
0
Rejoignez-nous