Transformer les données XLS en Rappel Outlook

J

JM

Guest
Bonjour,

j'ai un tableau XLS qui contient une liste de tâches à effectuer sur l'année
et une date (ou des fréquences du type 'tous les 2 mois').

Je souhaiterai connaître la formule / astuce / script pour récupérer automatiquement le contenu de la cellule XLS
dans le champ 'objet' d'un nouveau rdv du calendrier Outlook.

J'ai déjà vu cela fonctionner sur le site d'Ebay pour ne pas rater la fin d'une
enchêre. Ils appelaient cela CalReminder.

Merci à vous
 

MichelXld

XLDnaute Barbatruc
bonjour JM

tu peux tester cette macro pour ajouter un rendez vous dans le calendrier Outlook

Sub NouveauRDV_Calendrier()
'nécéssite d'activer la référence Microsoft Outlook 10.0 Object Library
Dim myOlApp As New Outlook.Application
Dim MyItem As Outlook.AppointmentItem

Set MyItem = myOlApp.CreateItem(olAppointmentItem)

With MyItem
.MeetingStatus = olMeeting
.Subject = 'le forum xld'
.Body = '...description ....'
.Location = 'sur le chat'
.Start = #1/22/2006 9:30:00 PM# ' Attention : format mois/jours/année
.Duration = 30 'minutes
.Save
End With
End Sub



bon apres midi
MichelXld
 
J

JM

Guest
Bonsoir,

Si j'installe cette macro, j'ai le message d'erreur suivant : 'Erreur de compilation : type défini par l'utilisateur non défini' (myOIApp ... sur fond jaune).

J'ai Windows XP home et Office 2003 pro.

Y a t-il un moyen simple d'executer cette macro ?

Merci !
 
J

JM

Guest
J'avance, j'avance ... bien que je ne sois pas un pro d'excel.

Dans Visual Basic Editor > Outils, 'Référence' était grisé. Solution : j'ai lancé Microsoft Script Editor > Outils > Personnaliser la boite à outils => affichage d'une fenêtre qui me dde si ok pour l''installation des composants web' (Contrôle COM) -> donc 'Ok'. Ensuite, en retournant dans 'Référence' celuic est s'est dégrisé(!).

J'ai donc coché 'Microsoft office 11.0 object library'.

Maintenant, quand je lance la macro, j'ai un rappel Outlook qui est généré (heu-reux !) mais l'objet est 'le forum xld' et non le texte saisi dans la cellule A1 par exemple.

Il ne manque pas grand chose pour arriver au but.
Pouvez-vous me dire comment faire ? Merci
 
J

JM

Guest
Voici le code définitif pour ceux que cela intéressent :

Sub NouveauRDV_Calendrier()
'Nécessite d'activer la référence Microsoft Outlook (n°de version) Object Library
'si elle n'est pas installée.

'Contenu du champ 'Objet' du mail :
'Si le contenu est toujours le même, la ligne est : .Subject = 'Contacter Untel' (par exemple)
'Si le contenu est une valeur d'une cellule (A2 par exemple),
'remplacer la ligne par : .Subject = Range('A2')

'Si j 'installe cette macro et que je l'exécute, il est possible d'avoir le
'message d'erreur suivant : 'Erreur de compilation : type défini par l'utilisateur non défini'
'Solution: dans l 'editeur de macros (Visual Basic Editor), aller dans le
'Menu 'Outils' > 'References' et cocher la ligne 'Microsoft Outlook xx.x Object Library '
'(descendre l'ascenseur pour le trouver)
' Si 'Référence' est grisé.
' Solution : lancer Microsoft Script Editor > Outils > Personnaliser la boite à outils
' => affichage d'une fenêtre qui dde si ok pour l''installation des composants web' (Contrôle COM) -> cliquer sur 'Ok'.
' Retourner dans 'Référence' (qui est maintenant dégrisé) et cocher 'Microsoft office 11.0 object library'.


Dim myOlApp As New Outlook.Application
Dim MyItem As Outlook.AppointmentItem

Set MyItem = myOlApp.CreateItem(olAppointmentItem)

With MyItem
.MeetingStatus = olMeeting
.Subject = Range('A2') 'paramétrer le contenu de la colonne xls :
' Format > Cellule > Onglet 'Nombre' > Choisir 'Personnalisé' en bas de la liste puis
' sélectionner 'jj/mm/aaaa hh:mm'
.Body = 'Compléter :'
.Location = 'Compléter :'
Start = Range('B2') ' à choisir pour mettre la date qui est dans la cellule B2
'Start = Date ' à choisir pour mettre la date et l'heure actuelle (par tranche de 30')
'(.Start = #1/23/2006 9:30:00 PM# signifie 23/01/2006 à 21H30. Attention : format Mois/Jours/Année (et non JJ/MM/AAAA).
.Duration = 30 'réglé sur 30 minutes par défaut
.Save
End With
End Sub
 

Membres actuellement en ligne

Statistiques des forums

Discussions
312 429
Messages
2 088 350
Membres
103 822
dernier inscrit
kader55