Invitation VBA Outlook _ PJ _ Optionalattendees_Reminder
Bonjour à toutes et tous,
J'utilise le programme suivant pour envoyer des invitations en 1 click mais :
3 fonctionnalités ne réagissent pas comme je le souhaite
le reminder je souhaiterais qu'il se déclache 2 jours avant la date de début de la réunion
le optionalAttendees se met dans les participants obligatoires
la pièce jointe supplémentaire qui ne se génère pas et qui finalement ne tient plus compte de la suite de mon code (j'ai bien compris que son emplacement dans le code joue un rôle mais pas clair pour moi).
Et pour finir, à chaque envoi il me met l'erreur «L’objet ne prend pas en charge cette propriété ou méthode» (ERREUR 438)
Merci d'avance de votre aide! :)
Sub Invitformation()
Dim objOL 'As Outlook.Application
Dim objAppt 'As Outlook.AppointmentItem
Dim C As Range
Dim nompdf As String
Const olAppointmentItem = 1
Const olMeeting = 1
nompdf = Environ("Temp") & "\" & "Convoc formation " & Range("C26").Value & " " & Range("B16").Value & " S" & Range("L4").Value
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nompdf & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Set objOL = CreateObject("Outlook.Application")
Set objAppt = objOL.CreateItem(olMeeting) 'olAppointmentItem
With objAppt
.Display
.Subject = Range("B13").Value & " : " & Range("B16").Value & " S" & Range("L4").Value
.Start = Range("D20").Value & " 07:00 "
.End = Range("F20").Value & " 15:00 "
.Location = Range("C25").Value
.BusyStatus = olBusy
.Attachments.Add nompdf & ".pdf"
If Range("U1").Value <> "" Then
.Attachments.Add Range("U1").Value 'Programme de formation
End If
.Body = "Bonjour," ...... "Vous en souhaitant bonne réception, cordialement." & Chr(10) & Chr(10) & "En pièce jointe votre convocation."
.Categories = ""
.ReminderSet = True
.ReminderMinutesBeforeStart = 2880 'Rappel 2 jours avant mais il fait 2 jours après mon envoi
.Importance = olImportanceHigh
' make it a meeting request
.MeetingStatus = olMeeting
.RequiredAttendees = Range("P8").Value 'participant obligatoire
.OptionalAttendees = Range("Q8").Value 'participants optionnel à la réunion s'insère dans participant obligatoire
.ResourceAttendees = Range("R8").Value 'participants optionnel à la réunion
End With
End Sub
J'utilise le programme suivant pour envoyer des invitations en 1 click mais :
3 fonctionnalités ne réagissent pas comme je le souhaite
le reminder je souhaiterais qu'il se déclache 2 jours avant la date de début de la réunion
le optionalAttendees se met dans les participants obligatoires
la pièce jointe supplémentaire qui ne se génère pas et qui finalement ne tient plus compte de la suite de mon code (j'ai bien compris que son emplacement dans le code joue un rôle mais pas clair pour moi).
Et pour finir, à chaque envoi il me met l'erreur «L’objet ne prend pas en charge cette propriété ou méthode» (ERREUR 438)
Merci d'avance de votre aide! :)
Sub Invitformation()
Dim objOL 'As Outlook.Application
Dim objAppt 'As Outlook.AppointmentItem
Dim C As Range
Dim nompdf As String
Const olAppointmentItem = 1
Const olMeeting = 1
nompdf = Environ("Temp") & "\" & "Convoc formation " & Range("C26").Value & " " & Range("B16").Value & " S" & Range("L4").Value
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nompdf & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Set objOL = CreateObject("Outlook.Application")
Set objAppt = objOL.CreateItem(olMeeting) 'olAppointmentItem
With objAppt
.Display
.Subject = Range("B13").Value & " : " & Range("B16").Value & " S" & Range("L4").Value
.Start = Range("D20").Value & " 07:00 "
.End = Range("F20").Value & " 15:00 "
.Location = Range("C25").Value
.BusyStatus = olBusy
.Attachments.Add nompdf & ".pdf"
If Range("U1").Value <> "" Then
.Attachments.Add Range("U1").Value 'Programme de formation
End If
.Body = "Bonjour," ...... "Vous en souhaitant bonne réception, cordialement." & Chr(10) & Chr(10) & "En pièce jointe votre convocation."
.Categories = ""
.ReminderSet = True
.ReminderMinutesBeforeStart = 2880 'Rappel 2 jours avant mais il fait 2 jours après mon envoi
.Importance = olImportanceHigh
' make it a meeting request
.MeetingStatus = olMeeting
.RequiredAttendees = Range("P8").Value 'participant obligatoire
.OptionalAttendees = Range("Q8").Value 'participants optionnel à la réunion s'insère dans participant obligatoire
.ResourceAttendees = Range("R8").Value 'participants optionnel à la réunion
End With
End Sub
1 réponse
-
Contributeur Ambassadeurbonjour,
.ResourceAttendees
n'existe pas, utilise plutôt.Resources
.-
-
-
@babie_971Du coup après beaucoup de recherches et de tentatives j'ai pu me dépatouiller avec le code suivant qui fonctionne pour le moment plutôt pas mal.
If Range("u1").Value <> vide Then If Dir(Range("u1").Value) <> vide Then .Attachments.Add Range("u1").Value 'Insertion Programme de formation
Sur beaucoup de forum je trouvais plutôt les "" en lieu et place de "vide" mais cela ne fonctionnait pas.
-