Bonjour à tous,
J'ai depuis quelques temps mis en place une macro qui permettait d'envoyer la feuille active (un planning) par mail.
Cela fait au moins 3 mois qu'elle fonctionnait et d'un coup, plus rien...
Aucune erreur n'est renvoyée, la procédure s’exécute mail le mail ne part pas...
Voici le code, si vous avez des pistes je suis preneur :
Edit : Il semblerait que ce soit le .Send qu'il n'aime pas... comment le contourner ?
Sub EnvoiPlanning()
If MsgBox("Voulez-vous vraiment envoyer le mail ?", 36, "Confirmation") = vbYes Then
'Update 20230201
Dim xFile As String
Dim xFormat As Long
Dim Wb As Workbook
Dim Wb2 As Workbook
Dim FilePath As String
Dim FileName As String
Dim OutlookApp As Object
Dim OutlookMail As Object
On Error Resume Next
Application.ScreenUpdating = False
Set Wb = Application.ActiveWorkbook
ActiveSheet.Copy
Set Wb2 = Application.ActiveWorkbook
Select Case Wb.FileFormat
Case xlOpenXMLWorkbook:
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
Case xlOpenXMLWorkbookMacroEnabled:
If Wb2.HasVBProject Then
xFile = ".xlsm"
xFormat = xlOpenXMLWorkbookMacroEnabled
Else
xFile = ".xlsx"
xFormat = xlOpenXMLWorkbook
End If
Case xlExcel12:
xFile = ".xlsb"
xFormat = xlExcel12
End Select
FilePath = Environ$("temp") & "\"
FileName = Wb.Name & Format(Now, "dd-mmm-yy h-mm-ss")
Set OutlookApp = CreateObject("Outlook.Application")
Set OutlookMail = OutlookApp.CreateItem(0)
Wb2.SaveAs FilePath & FileName & xFile, FileFormat:=xFormat
With OutlookMail
.To = "XXXXXXX@gmail.com"
.CC = ""
.BCC = ""
.Subject = "Planning PepsiCo du" & " " & ActiveSheet.Range("N1")
.Body = "Bonjour," & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Bonne réception à vous," & Chr(13) & Chr(10) & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Francisca "
.Attachments.Add Wb2.FullName
.Send
End With
Wb2.Close
Kill FilePath & FileName & xFile
Set OutlookMail = Nothing
Set OutlookApp = Nothing
Application.ScreenUpdating = True
MsgBox ("Mail Envoyé ! :) ")
Else: Exit Sub
End If
End Sub
Qu'en pensez-vous ?