Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

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
 

Phil69970

XLDnaute Barbatruc
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
 

Phil69970

XLDnaute Barbatruc
Re

Je rejoins Daniel nous sommes sur un site de partage et le minimum c'est bien de partager la solution quand on a posé une question sur le forum, cela pourrait aider d'autres participants.
(Y compris quand la réponse vient d'un autre site)

@Phil69970
 

Discussions similaires

Réponses
2
Affichages
345
Réponses
2
Affichages
656
Réponses
7
Affichages
586
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…