Créer des rendez vous dans outlook
bonjour
je souhaite dans le fichier joins pouvoir créer automatiquement via une macro des rendez vous dans outlook .
si on prends par exemple la feuille "-12f"
voila ce que je voudrais qu'il y ai dans les rendez vous :
objet : "match :" + colonne E "-" + colonne F
emplacement : colonne J
heure début : colonne C
heure fin : colonne d + 1h
date : colonne B
je n'ai pas trouvé sur le forum de réponse qui me permette d'avancer
je vous remercie d'avance pour votre aide
j'ai avancé un peu sur la macro
voir la macro rdv du fichier ci dessous
par contre j'ai un soucis au niveau de la date et heure .... ( start et duration)
Sub Rdv()
'
' Macro3 Macro
'
'
Dim derl As Integer
Dim i As Integer
derl = Range("b" & Rows.Count).End(xlUp).Row
For i = 11 To derl
If Cells(i, 2) > 0 Then
Dim OkApp As New Outlook.Application
Dim Rdv As Outlook.AppointmentItem
Set Rdv = OkApp.CreateItem(olAppointmentItem)
With Rdv
.MeetingStatus = olMeeting
.Subject = Cells(3, 6) & " : " & Cells(i, 5) & " - " & Cells(i, 6)
.Location = Cells(i, 10)
.Start = #Cells(i, 2) & Cells(i, 3)
.Duration =???????
.Categories = "Handball"
.Save
End With
Set OkApp = Nothing
End If
Next
End Sub
Bonjour,
je te joint un fichier excel qui permet d'envoyer un mail, avec pièce jointe à partir d'Excel.
Ce fichier n'est pas de moi, il faudra l'adapter à ton cas je pense!!
Mais il pourra surement t'aider à avancer dans ton projet!
Bon courage.
merci de ta réponse
mais cela ne correspond pas a ce que je recherche , envoyé un mail , je sais grosso modo comment ca fonctionne , la ce que je voudrais c'est créer un rendez vous dans l'agenda
bonjour
me revoila ...
j'avance a petit pas mais j'avance
j'ai trouvé une autre façon pour détecter un doublon , qui vu les commentaires ou je l'ai trouvé devrait fonctionner ... mais pas chez moi il me créé toujours les doublons ( la partie création de RDV fonctionne elle tres bien )
j'ai vraiment besoin d'une âme charitable pour me donner un coup de main
voici le code de la macro :
Sub Rdv()
'
' Macro3 Macro
'
'
Dim derl As Integer
Dim i As Integer
Dim heure As Date
Dim jours As Date
Dim depart As Date
Dim objet As String
Dim debmatch As Date
Dim finrdv As Date
derl = Range("b" & Rows.Count).End(xlUp).Row
For i = 11 To derl
If Cells(i, 2) > 0 Then
heure = Cells(i, 3)
jours = Replace(Replace(Replace(Replace(Cells(i, 2), "samedi ", ""), "dimanche ", ""), " ", "/"), " ", "/")
depart = jours + heure
objet = Cells(3, 6) & " : " & Cells(i, 5) & " - " & Cells(i, 6)
debmatch = Cells(i, 4)
finrdv = jours + Cells(i, 4) + CDate("01:00:00")
'-----------------------------
Dim OutlApp As New Outlook.Application
Dim OutlMapi As Outlook.Namespace
Dim OutlFolder As Outlook.MAPIFolder
Dim OutlAppointment As Outlook.AppointmentItem
Dim OutlItems As Outlook.Items
Dim DateDebut As String
Set OutlMapi = OutlApp.GetNamespace("MAPI")
Set OutlFolder = OutlMapi.GetDefaultFolder(olFolderCalendar)
Set OutlItems = OutlFolder.Items
On Error Resume Next
Set OutlAppointment = OutlItems.Find("[start] = '" & depart & "'")
On Error GoTo 0
'----- si pas de rendez vous a la date indiquée -------
If OutlAppointment Is Nothing Then
'-----------------------------------
Dim OkApp As New Outlook.Application
Dim Rdv As Outlook.AppointmentItem
Set Rdv = OkApp.CreateItem(olAppointmentItem)
With Rdv
.MeetingStatus = olMeeting
.Subject = objet
.Body = Cells(i, 1) & Chr(10) & "-début du match : " & debmatch & Chr(10) & Chr(10) & Chr(10) & Chr(10) & "-* entraineur : " & Cells(4, 3) & Chr(10) & "-* numéro entraineur : " & Cells(5, 3) & Chr(10) & "-* parent référent : " & Cells(6, 3) & Chr(10) & "-* téléphone référent : " & Cells(7, 3)
.Location = Cells(i, 10)
.Start = depart
.End = finrdv
.Categories = Cells(3, 6)
.ReminderSet = False 'pas de rappel
.Save
End With
Set OkApp = Nothing
End If
End If
Next i
End Sub
et voici le fichier avec les dernières modifications