3/5 (7 avis)
Snippet vu 24 378 fois - Téléchargée 31 fois
'Envoie de mail Dim objOutlook as New Outlook.Application Dim objOutlookMsg as Outlook.MailItem Set objOutlookMsg = objOutlook.CreateItem(olMailItem) With objOutlookMsg .To = "Adresse@Destinataire" .Subject = "Objet du message" .Body = "Texte du message" .Send End With Set objOutlookMsg = Nothing 'Ajout d'un rdv au calendrier Dim objOutlook as New Outlook.Application Dim objOutlookAppt as Outlook.AppointmentItem Set objOutlookAppt = objOutlook.CreateItem(olAppointmentItem) With objOutlookAppt .Start = "jj/mm/aaaa hh:mm" .Duration = x 'En minute .Subject = "Description du rendez-vous" .Save End With 'Modifier/Supprimer un rdv du calendrier Dim objOutlook as New Outlook.Application Dim objOutlookAppt as Outlook.AppointmentItem Dim objOutlookCalendar as Outlook.Items Dim objOutlookNameSpace as Outlook.NameSpace Dim DateDebut as String, DateFin as String Set objOutlookNameSpace = objOutlook.GetNameSpace("MAPI") Set objOutlookCalendar = objOutlookNameSpace.GetDefaultFolder(olFolderCalendar).Items objOutlookCalendar.Sort "[Start]" objOutlookCalendar.IncludeReccurrences = True DateDebut = "jj/mm/aaaa hh:mm" DateFin = "jj/mm/aaaa hh:mm" Set objOutlookAppt = objOutlookCalendar.Find("[Start] >= " " " & DateDebut & " " " and [Start] <= " " " & DateFin & " " " ") While TypeName(objOutlookAppt) <> "Nothing" If objOutlookAppt.Subject = "RDV recherché pour etre modifié" then objOutlookAppt.Subject = "Nouveau sujet" objOutlookAppt.Save Exit Sub End If If objOutlookAppt.Subject = "RDV recherché pour supprimé" then objOutlookAppt.Delete Exit Sub End If Set objOutlookAppt = objOutlookCalendar.FindNext Wend
15 janv. 2009 à 16:40
Perso, j'ai un soucis avec ton code lors de l'exécution de la ligne suivante :
objOutlookCalendar.IncludeReccurrences = True
J'ai aussi beaucoup chercher pour arriver à trouver qqch. Voici la solution que j'ai trouvée : http://www.vbfrance.com/codes/CREATION-CANCEL-MEETING-SUR-CALENDRIER-AUTRE-CELUI-COMPTE_48982.aspx
Ta solution de modification des rendez-vous ne me plaît pas du tout, car tu supprime un rendez-vous pour en recréer un nouveau. Cela n'est pas une mise à jour du rendez-vous. Si quelqu'un a modifier le rendez-vous sur outlook avant que tu fasse la tienne, tu écrase/annule/supprime sa modification avec ta méthode. Ton code permet de créer ou supprimer. et pour la suppression c'est pas encore ça. Imagine que tu aie 2 rendez-vous avec le même sujet! Ils sont supprimés les 2. (voilà le pourquoi de la note)
Ma solution ne contient malheureusement pas la mise à jour, car je n'ai pas trouvé comment la réaliser. Et ce malgré que j'arrive à charger le bon rendez-vous grâce à l'identifiant.
Je préfère ta méthode de recherche de meetings. Cela dis, j'avais lu sur un forum qu'il était mieux de faire une recherche for next que for each afin d'éviter des erreurs non définies par Microsoft (fiction ou réalité?). Du coup, j'ai modifier le code.
A+
14 mai 2008 à 15:26
3 rectifications pour la recherche (chez moi en tout cas):
1) objOutlookCalendar.IncludeRecurrences = True
2) DateDebut = "jj/mm/aaaa"
DateFin = "jj/mm/aaaa"
3) Set objOutlookAppt = objOutlookCalendar.Find("[Start]>= " & """" & DateDebut & """" & " and [Start]<=" & """" & DateFin & """")
16 déc. 2007 à 19:32
je vous remercie pour ce code , mais j aimerai bien savoir comment envoyé un mail à une date système précis
30 mai 2007 à 03:27
La ligne :
Set objOutlookAppt = objOutlookCalendar.Find("[Start] >= " " " & DateDebut & " " " and [Start] <= " " " & DateFin & " " " ")
me donne une erreur de syntaxe.
4 mai 2007 à 16:01
Super !!! Un gros merci...
Depuis quelques jours je recherche comment fixer ma recherche sur des RDV de mon calendrier OUTLOOK selon une date précise.
Je réussissais bien à avoir une liste mais je récupérais tous les RDV.
Par contre, je ne peux pas appliquer la commande suivante :
objOutlookCalendar.IncludeReccurrences = True
??????
Je pense que c'est lié au RDV avec une périodicité.
Encore merci !
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.