Bonjour,
Voici mon cas d'usage.
Jusqu'à présent mes équipes envoient leurs demandes de tickets restaurant via un Excel et une macro qui joint cet Excel dans un mail et réalise l'envoi.
Problème : depuis le nouvel Outlook, le code VBA ne passe plus.
Set OutApp = CreateObject("Outlook.Application")
Comment contourner cette restriction sachant que je souhaiterais conserver un fonctionnement par macro pour ne pas perdre les utilisateurs ?
Voici le bout de code complet :
' Définir l'adresse e-mail
mailAddress = "ticketsrestaurant@masociete.org"
' Créer l'e-mail
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
' Créez une liste de pièces jointes (fichiers) à attacher
attachments = Array(wb.FullName)
' Créez un nouvel objet pour l'e-mail
Set OutMail = CreateObject("Outlook.Application").CreateItem(0)
With OutMail
.To = mailAddress
.CC = ""
.BCC = ""
.Subject = "Nouvelle commande TR de " & C5Value
.Body = "Veuillez trouver ci-joint la nouvelle commande TR. " & C5Value
For Each attachment In attachments
.attachments.Add attachment ' Attacher le fichier
Next attachment
.Send ' ou utilisez .Display pour afficher l'e-mail avant de l'envoyer
End With
' Nettoyer
Set OutMail = Nothing
Set OutApp = Nothing
Application.ScreenUpdating = True
Dim message As String
message = "Ce fichier a été enregistré dans votre dossier : " & Chemin & vbNewLine & "" & vbNewLine & "Nous vous invitons à vérifier dans votre boîte mail que le fichier a bien été envoyé."
MsgBox message, vbInformation, "Message"
End Sub
Merci pour votre aide,
Matthieu