Outlook importation outlook dans excel

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

naf naf

XLDnaute Nouveau
bonjour,
j'explique mon probleme :
tous les vendredi j'envoie un avis de RDV outlook aux memes personnes
elles ont jusqu'au jeudi soir pour repondre : accepté , refusée ...

Je souhaiterais le vendredi, lancer une macro afin de recuperer sous forme de tableau excel
1 colonne pour les noms des personnes et 2 colonnes pour avoir leur réponse ( Accepté ou refusée, ...)

J'espere avoir était clair, je débute sur le forum
Merci pour votre aide
 
Bonjour naf naf,

je ne peux pas t'aider pour Outlook, mais c'est inutile de faire 2 colonnes
"accepté" et "refusé" puisque l'un est le contraire de l'autre : ce sera plus
clair de faire une seule colonne "accepté" où tu coches avec "x" quand
c'est accepté et tu laisses vide quand c'est refusé ; ou éventuellement
l'inverse : une seule colonne "refusé" où tu coches avec "x" quand c'est
refusé et tu laisses vide quand c'est accepté.

bien sûr, ce ne sont que des suggestions : après, c'est à toi de choisir
selon tes goûts ; donc si tu préfères quand même 2 colonnes : ok.

j'espère qu'un autre intervenant pourra t'apporter une solution. 🍀


soan
 
Bonjour nafnaf, soan, le forum

Un lien qui semble approcher le sujet

Et un autre qui utilise un code VBA mais pour retourner un mail.
Cela donne toutefois des idées.

xl-ment
 
Bonjour nafnaf, soan, le forum

Un lien qui semble approcher le sujet

Et un autre qui utilise un code VBA mais pour retourner un mail.
Cela donne toutefois des idées.

xl-ment
merci c'est exactement le premier lien a la difference que je voudrai le faire a partir de VBA excel
 
Bonsoir le fil, naf naf, zebanx, soan

=>naf naf
Je ne pourrai tester ce code que demain.
(pas d'Outlook sur ce PC)
Code à mettre dans Excel (puisque telle est la demande)
Pré-requis: voir commentaire dans le code VBA
VB:
Sub test_OL_2_XL()
'=>(activer la référence à la librairie Outlook dans VBE => Outils/Référence)<=
Dim oOL As New Outlook.Application, oNS As Outlook.Namespace
Dim oAppointments As Object
Set oNS = oOL.GetNamespace("MAPI")
Set oAppointments = oNS.GetDefaultFolder(olFolderCalendar) 'calendrier par défaut
j = 2
[A1:C1] = [{"Participants","Statut","Type Destinataire"}]
For Each oAppointmentItem In oAppointments.Items
For Each oRcp In oAppointmentItem.Recipients
Cells(j, 1).Resize(, 3) = Array(oRcp.Name, oRcp.MeetingResponseStatus, oRcp.Type)
j = j + 1
Next
Next
End Sub
 
Bonsoir le fil, naf naf, zebanx, soan

=>naf naf
Je ne pourrai tester ce code que demain.
(pas d'Outlook sur ce PC)
Code à mettre dans Excel (puisque telle est la demande)
Pré-requis: voir commentaire dans le code VBA
VB:
Sub test_OL_2_XL()
'=>(activer la référence à la librairie Outlook dans VBE => Outils/Référence)<=
Dim oOL As New Outlook.Application, oNS As Outlook.Namespace
Dim oAppointments As Object
Set oNS = oOL.GetNamespace("MAPI")
Set oAppointments = oNS.GetDefaultFolder(olFolderCalendar) 'calendrier par défaut
j = 2
[A1:C1] = [{"Participants","Statut","Type Destinataire"}]
For Each oAppointmentItem In oAppointments.Items
For Each oRcp In oAppointmentItem.Recipients
Cells(j, 1).Resize(, 3) = Array(oRcp.Name, oRcp.MeetingResponseStatus, oRcp.Type)
j = j + 1
Next
Next
End Sub
Merci , tu es vraiment super.
Par contre pas compris ou je défini le calendrier et la date de ce RDV que je veux recuperer les participants
je sais je suis mauvais.
Actuellement j'ouvre le RDV je fais suivi copier dans le presse papier et colle dans une cellule excel
 
Re

Comme indiqué dans le commentaire du code
Dans cet exemple, on pointe sur le calendrier par défaut (du compte par défaut)
Et comme je ne peux pas tester ce soir
Il faudra attendre demain (j'ai Outlook au boulot)
ou qu'un membre du forum utilisant Outlook teste ce bout de code que j'ai pondu ex nihilo après quelques minutes de G••gling.
😉
 
Re

Comme indiqué dans le commentaire du code
Dans cet exemple, on pointe sur le calendrier par défaut (du compte par défaut)
Et comme je ne peux pas tester ce soir
Il faudra attendre demain (j'ai Outlook au boulot)
ou qu'un membre du forum utilisant Outlook teste ce bout de code que j'ai pondu ex nihilo après quelques minutes de G••gling.
😉
Encore merci
 
Bonjour le fil

=>naf naf
J'ai eu le temps de faire des tests à minima
(faut bien que je bosse un peu aussi 😉)
Donc ci-dessous test OK ( à partir d'Excel)
Pré-requis: activer la référence à la librairie Outlook dans VBE
(ALT+F11 => Outils/Références)
Ce code ne fait qu'une seule chose: exporter la liste des réunions du calendrier par défaut d'Outlook (en ne prenant que les noms des participants qui ont accepté la réunion)
Test OK sur mon PC de boulot (Excel 2010 et Exchange)
NB: Outlook est ouvert quand je lance la macro à partir d'Excel.
VB:
Sub test_OL_RDV_vers_Excel()
Dim oOL As New Outlook.Application, oNS As Outlook.Namespace
Dim oCAL As Object, oLRDV As Object, oRV As Object, obj As Object, tmp$, Liste$, j&, k%

Set oNS = oOL.GetNamespace("MAPI")
Set oCAL = oNS.GetDefaultFolder(olFolderCalendar)

Set f = ActiveSheet
f.[A1:E1] = _
Array("Organisateur", "Date", "Objet", "Début Réunion", "Participants = Accepté"): j = 2
Set oLRDV = oCAL.Items: oLRDV.Sort "[Start]": oLRDV.IncludeRecurrences = True
Application.ScreenUpdating = False
For Each oRV In oCAL.Items
If oRV.Class = olAppointment Then
For Each obj In oRV.Recipients
If obj.MeetingResponseStatus = 3 Then
tmp = tmp & obj.Name & ",": Liste = Left(tmp, Len(tmp) - 1)
End If
Next
With oRV
f.Cells(j, 1).Resize(, 4) = Array(.Organizer, .CreationTime, .Subject, .Start)
End With
f.Cells(j, 5) = Liste
j = j + 1
End If
Next
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

S
Réponses
2
Affichages
1 K
schlouff
S
Retour