Enregistrer des dates d'un fichier Excel sur Outlook

Bonjour à tous,

Je suis à la recherche d'une macro qui me permettrait d'enregistrer un rendez-vous sur Outlook grâce à la date qui m'est proposée (via un calcul) dans une cellule d'une feuille Excel.

En gros, après un calcul, la cellule A1 me donne, par exemple, jeudi 30 janvier 2014. J'aimerais ensuite pouvoir appuyer sur un bouton (que j'ai créé) qui m'ouvre Outlook et une fenêtre de "Nouveau rendez-vous" avec les préenregistrements suivants:

  • Rendez-vous à partir de "Xh" jusqu'à "Yh"
  • Rappel sonore à l'heure "X", donc 0 minutes avant que le rendez-vous commence
  • Objet du rendez-vous = "Exemple"
  • Commentaires = "Blablaba " & un nombre de plage de cellules définies concaténés dans le commentaire
Tout cela pour la date indiquée en A1 et il n'y a plus qu'à modifier les données du rendez-vous si nécessaire et l'enregistrer par la suite.

Les données "Xh"; "Yh"; "Exemple" et "blabla" sont évidemment connues, c'est simplement qu'elles vont changées car je vais reproduire cette macro plusieurs fois.

J'espère que j'ai été assez clair dans mes explications, et je vous remercie dès lors pour votre aide,

Viox

Bonjour Viox

Voici ce que j'utilise

Sub RappelOutlook()
' Ajouter un nouveau rendez-vous.
  Dim OutObj As Object, OutAppt As Object
  Dim Lig As Long, Sujet As String, Détail As String
  Dim sDate As String, Heure As String, HTemp As String
  Dim Delai As Integer, Rappel As Single
  ' Récupérer les paramètres pour OUTLOOK
  Delai = 15 :  Rappel = 0.5
  ' Ligne sur la feuille
  Lig = Selection.Row
  Sujet = "Sujet du Rendez-vous"
  sDate = Range("O" & Lig).Value  ' Cellule contenant la date de rappel
  If sDate = "" Then
    MsgBox "Vous devez inscrire un date de rappel !", vbCritical, "ATTENTION ..."
    Exit Sub
  End If
  On Error Resume Next
  ' Heure de rappel
  Heure = "09:30:00"
  ' Demander l'heure
  HTemp = InputBox("A qu'elle heure voulez-vous faire le rappel (HH:MM) ?", "HEURE de RAPPEL ...", Heure)
  If HTemp <> "" And HTemp <> Heure Then
    If InStr(1, HTemp, ":") > 0 Then Heure = HTemp
  End If
  ' Délai de la période 1 heure avant
  Heure = Format(Heure, "hh:mm:ss")
  On Error GoTo 0
  ' Créer l'instance OUTLOOK
  Set OutObj = CreateObject("outlook.application")
  ' Créer l'instance pour le RDV
  Set OutAppt = OutObj.CreateItem(1)  ' olAppointmentItem
  ' Si tout est OK, on créé un RDV
  With OutAppt
    .Start = sDate & " " & Heure
    .Duration = Delai
    .Location = "Montargis"
    .ReminderMinutesBeforeStart = Rappel * 60    ' rappeler X heure(s) avant
    .ReminderSet = True
    .Subject = Sujet
    .Body = Détail
    '.MeetingStatus = olMeeting
    '.OptionalAttendees = "titi@toto.fr" 'participants optionnel à la réunion
    ' Participant(s) obligatoire(s)
    '.RequiredAttendees = "DestOutlook"
    '.Send
    .Save
  End With
  ' Libérez la variable objet Outlook.
  Set OutObj = Nothing
  Set OutAppt = Nothing
  ' Petit message
  MsgBox "Le Rendez-vous à bien été ajouté ! ", vbInformation, "OK ..."
End Sub

A toi d'adapté

Ok super, ça marche du tonnerre, merci BrunoM45 Mais j'aurais besoin d'une dernière modification à ta macro. J'ai essayé de la faire moi-même mais je n'y arrive pas.

J'aimerais par moi-même appuyer manuellement sur le bouton enregistrer du rendez-vous, car même si je veux automatiser mes rendez-vous, il est possible que je fasse quelques petites modifications manuellement par rapport aux données de bases. Donc il faudrait que la macro m'ouvre Outlook, un nouveau rendez-vous avec les données de base déjà inscrites et si je veux modifier alors je le fais manuellement et après j'enregistre, sinon j'enregistre directement.

Merci d'avance

Rechercher des sujets similaires à "enregistrer dates fichier outlook"