jldancet
Messages postés21Date d'inscriptionlundi 14 août 2006StatutMembreDernière intervention17 février 2007
-
9 nov. 2006 à 13:33
Nicals -
18 févr. 2014 à 16:57
Bonjour,
J'ai un bout de code qui me permet d'envoyer de Excel dans Outlook calendrier un paquet de rendez-vous, le probleme est qu'ils vont toujours dans le calendrier par defaut, j'aimerai offrir un choix d'un calendrier à l'utilisateur.
Si quelqu'un hyperdoué pouvait me passer une solution ce serait géant.
Dans cette attente
jldancet
Messages postés21Date d'inscriptionlundi 14 août 2006StatutMembreDernière intervention17 février 20071 1 déc. 2006 à 15:30
categorie est un champ dans outlook, tu peux aller dans outlook , affichage et tu peux choisir par categorie,
tu peux avoir des categories du style amis, famille, client, etc pour tes rendez-vous, si bien que tu peux shooter tous les
rendez-vous d'une categorie d'un coup
encore merci
amicalement
Jean-Louis
jldancet
Messages postés21Date d'inscriptionlundi 14 août 2006StatutMembreDernière intervention17 février 20071 8 déc. 2006 à 21:17
Bonsoir,
J'ai le plaisir de te communiquer le code qui marche à la perfection, But : supprimer des appointments qui répondent à une categorie dans un calendrier partagé en reseau. Ca marche nickel.
Je te remercie encore pour toute l'aide que tu m'as apporté.
SUPPRESSION D'appointments dans un calendrier partagé en réseau pour une catégorie choisie
Sub supprimerRDVPR_SHR()
Application.ScreenUpdating = False
Dim objApp As Outlook.Application
Dim objNS As Outlook.Namespace
Dim objFolder As Outlook.MAPIFolder
Dim objRecip As Outlook.Recipient
Dim objAppt As Outlook.AppointmentItem
Dim objMyCalendar As Outlook.Items
Dim strMsg As String
Dim strName As String
Dim calendrier
Dim categorie
Dim dele
dele = 0
On Error Resume Next
Sheets("MACRO").Select
calendrier = "Nom du calendrier"
categorie = "Nom de la categorie"
strName = calendrier
Set objApp = DemarrerApp("Outlook.Application")
Set objNS = objApp.GetNamespace("MAPI")
Set objRecip = objNS.CreateRecipient(strName)
objRecip.Resolve
If objRecip.Resolved Then
On Error Resume Next
Set objFolder = _
objNS.GetSharedDefaultFolder(objRecip, _
olFolderCalendar)
Set objMyCalendar = objFolder.Items
Set objAppt = objMyCalendar.Items
For Each objAppt In objMyCalendar
With objAppt
If .Categories <> categorie Then GoTo suite
.Delete
dele = dele + 1
suite:
End With
Set objAppt = Nothing
Next objAppt
If dele = 0 Then GoTo fin
Call supprimerRDVPR_SHR
Else
MsgBox "Could not find " & Chr(34) & strName & Chr(34), , _
"User not found"
End If
fin:
Set objApp = Nothing
Set objNS = Nothing
Set objFolder = Nothing
Set objRecip = Nothing
Set objAppt = Nothing
End Sub
Je réactive cette ancienne conversation, mon souci étant similaire.
Je suis en train de réaliser un outil Excel qui permet de restituer des informations de calendrier Outlook.
Je coince au moment de restituer les calendriers qu'une personne a partagé avec moi.
Je récupère bien le calendrier partagé par défaut via la méthode GetSharedDefaultFolder, mais le hic c'est que cette personne a plusieurs calendriers partagés avec moi. Et je n'arrive pas à les récupérer (via une boucle sur GetSharedDefaultFolder.parent par exemple).
Je souhaiterai pouvoir naviguer dans l'arborescence des dossiers partagés aussi simplement que dans celle des dossiers propriétaires, où il suffit de rajouter des niveaux en .folders("xxxx").
Je trouve des éléments de réponse sur le net pour des problèmes similaires, mais les solutions proposées ne proposent "que" d'accéder au calendrier partagé par défaut.