Je beug sur un macro

il y a une procedure pour sursauter cela, mais je ne sais pas vous expliquer en français.

Sub Envoyer_par_E_mail()

     Dim xSht  As Worksheet
     Dim xFileDlg As FileDialog
     Dim xFolder As String
     Dim xYesorNo As Integer
     Dim xOutlookObj As Object
     Dim xEmailObj As Object
     Dim xUsedRng As Range

     Set xSht = ActiveSheet
     Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)

     If xFileDlg.Show = True Then
          xFolder = xFileDlg.SelectedItems(1)
     Else
          MsgBox " Vous devez spécifier un dossier dans lequel enregistrer le PDF. " & vbCrLf & vbCrLf & " Appuyez sur OK pour quitter. ", vbCritical, " Doit spécifier le dossier de destination "
          Exit Sub
     End If
     
     xFolder = xFolder & "\" & xSht.Name & "_" & Replace(Sheets("Demande de devis").Range("J4").Value, "/", "_") & ".pdf"     '/ = mauvais charactère

     'Check if file already exist
     If Len(Dir(xFolder)) > 0 Then
          xYesorNo = MsgBox(xFolder & " Le nom du fichier existe déjà." & vbCrLf & vbCrLf & " Voulez-vous l’écraser? ", _
                            vbYesNo + vbQuestion, " File Exists ")
          On Error Resume Next
          If xYesorNo = vbYes Then
               Kill xFolder
          Else
               MsgBox " Si vous n’écrasez pas le PDF existant, je ne peux pas continuer. " _
                      & vbCrLf & vbCrLf & " Appuyez sur OK pour quitter. ", vbCritical, " Quitter "
               Exit Sub
          End If
          If Err.Number <> 0 Then
               MsgBox " Impossible de supprimer le fichier existant. Veuillez vous assurer que le fichier n’est pas ouvert ou protégé en écriture. " _
                      & vbCrLf & vbCrLf & " Appuyez sur OK pour quitter. ", vbCritical, " Impossible de supprimer le fichier "
               Exit Sub
          End If
     End If

     Set xUsedRng = xSht.UsedRange
     If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then
          'Save as PDF file
          xSht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xFolder, Quality:=xlQualityStandard

          'Create Outlook email
          Set xOutlookObj = CreateObject("Outlook.Application")
          Set xEmailObj = xOutlookObj.CreateItem(0)
          With xEmailObj
               .Display
               .To = Range("G7")
               .CC = ""
               .Display                      ' afficher le mail avant de l’envoyer sinon placer send pour envoyer
               .Subject = Range(" F9 ") + " - N° " + Range(" J4 ")
               .HTMLBody = " <font face= "" Arial "" ><font size= "" 14px "" ><br><br> Bonjour, " & _
                           "<br><br>Merci de bien vouloir me chiffrer un devis de fourniture pour l’atelier peinture / sol souple, avec en pièce jointe une demande de devis détaillé <strong>N° " & Range(" J4 ") & "</strong>." _
                           & "<br><br>INTITULER DE L ›<strong>" & Range(" E7 ") & "</strong>" & _
                           "<br><br>Je reste à disposition pour tout renseignement complémentaire. <br><br> Bonne réception. "
               .Attachments.Add xFolder
               If DisplayEmail = False Then
                    '.Send
               End If
          End With
     Else
          MsgBox " La feuille de calcul active ne peut pas être vide """
          Exit Sub
     End If

End Sub


1 « J'aime »