VBA - Envoyer l'onglet actif + un autre en pdf

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Solo_Wing75

XLDnaute Nouveau
Bonjour à tous,

Tous d'abord, je tenais à remercier tous les contributeurs du forum qui m'ont souvent sorti de la galère 🙂

Alors voilà, je vous expose mon problème :

J'ai crée un code VBA qui vise à envoyer l'onglet actif en PDF.
J'essaye de le modifier, de sorte à envoyer dans un seul fichier PDF l'onglet actif + un onglet prédéfini.

Pour vous donner une idée, l'onglet actif comprend des tableaux à destination d'une personne en particulier, et l'onglet prédéfini une sorte de notice pour lire les tableaux.
J'aimerais donc utiliser la macro pour envoyer l'onglet actif à son destinataire, mais toujours avec la notice qui est dans un autre onglet du workbook.

A date, la macro fonctionne pour envoyer l'onglet actif uniquement, mais lorsque j'essaye d'ajouter l'onglet prédéfini, cela ne fonctionne pas.

Merci d'avance pour votre aide !

Ci-après la macro :


VB:
Sub mail_2()

Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object
Dim S As Shape

With Application
    .ScreenUpdating = False
    .EnableEvents = False
End With

Set Sourcewb = ActiveWorkbook

'Copie la feuille active comme nouvelle feuille
Sheets(Array(ActiveSheet.Name,"RULES").Copy
Set Destwb = ActiveWorkbook
  
'Désactiver fenêtre de compatibilité
        Application.DisplayAlerts = False
'----------------------------------------------------------------------------
'Sauvegarde la nouvelle feuille/L'envoie par mail/La supprime
'----------------------------------------------------------------------------

TempFilePath = Environ$("temp") & "\"
TempFileName = ActiveSheet.Name

Set OutApp = CreateObject("outlook.application")
Set OutMail = OutApp.CreateItem(0)


With Destwb
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=TempFilePath & TempFileName & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, ignoreprintareas:=False, openafterpublish:=False        ' sauvegarde du fichier au format pdf

    On Error Resume Next
    With OutMail
        .to = Range("T2").Value & ";" & Range("U2").Value & ";" & Range("V2").Value & ";" & Range("W2").Value
        .CC = ""
        .BCC = ""
        .Subject = "Subject"
        .Attachments.Add TempFilePath & TempFileName & ".pdf"
        .Body = "Dear All," & vbCrLf & "Please find attached your Subject." & vbCrLf & "Kind regards"
        '.display 'ou alors utiliser
        .Send 'pour envoi
    End With
    On Error GoTo 0
    .Close savechanges:=False
End With

    'Effacer le fichier envoyé
Kill TempFilePath & TempFileName & ".pdf"

Set OutMail = Nothing
Set OutApp = Nothing


With Application
    .ScreenUpdating = True
    .EnableEvents = True
    End With

End Sub
 
Bonjour Solo_Wing75, le forum

Ce fil pourrait d'aider :
Il montre comment mettre plusieurs onglets dans un seul pdf. (voir post 5)

Sinon un fichier pourrait aider à la résolution de ton problème.

@Phil69970
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Question code VBA
Réponses
2
Affichages
387
Réponses
4
Affichages
362
  • Question Question
Microsoft 365 Code VBA
Réponses
7
Affichages
639
Réponses
2
Affichages
718
Réponses
2
Affichages
406
Réponses
3
Affichages
537
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
79
Retour