Envoyer feuille par mail lorsqu'on a deux classeur pour un userform
D
Bonjour comment allez vous ? je gere deux classeur avec un userform.
je voudrais pouvoir envoyer des feuilles au choix par mail
j'ai ma formule habituelle qui est
Private Sub CommandButton6_Click()
Dim Ind As Integer, NbFeuil As Integer
Dim sNomFic As String, sRep As String
Dim TabFeuil() As String
Dim WshShell As Object
Dim Sht As Worksheet
Dim OutApp As Object, OutMail As Object
'
' Demander quelle feuille
UsF_ChoixImp.Show
'
' Vérifier si au moins 1 feuille a été selectionnée, sinon on sort
If ListeFeuilSel = "" Then Exit Sub
'
' Définir le tableau des feuilles
TabFeuil = Split(ListeFeuilSel, ",")
' Nombre de feuille sélectionnées
NbFeuil = UBound(TabFeuil)
'
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
' Créer une instance Windows Script pour retrouver le chemin du bureau
Set WshShell = CreateObject("WScript.Shell")
sRep = WshShell.SpecialFolders("Desktop")
Set WshShell = Nothing
' Créer une instance Outlook et mail
Set OutApp = CreateObject("outlook.application")
Set OutMail = OutApp.CreateItem(0)
' Afficher le mail pour la signature et définir les éléments souhaités
With OutMail
.To = "dj@icloud.com"
.Cc = ""
.Subject = "FICHE DE STOCK"
End With
' Ensuite il faut générer les feuilles
' Pour chaque feuille
For Ind = 0 To NbFeuil
With Sheets(TabFeuil(Ind))
' Afficher la feuille
.Visible = xlSheetVisible
' Nom de la feuille comme nom de fichier
sNomFic = .Name & ".pdf"
' L'exporter au format PDF
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=sRep & "\" & sNomFic, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
' Masquer la feuille
.Visible = xlSheetHidden
End With
' Attacher la feuille au mail
OutMail.Attachments.Add sRep & "\" & sNomFic
' Une fois attacher, on peut le supprimer
Kill sRep & "\" & sNomFic
Next Ind
' Uns fois terminé, on peut envoyer le mail
OutMail.Send
' Réactiver l'écran et les évènements
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Subj'ai un code dans le userform qui gere les deux classeur qui me permet d'imprimer la feuille au choix en fonction des selections des combobox
voici le code
If ComboBox2.Value = "" Or ComboBox1.Value = "" Then
MsgBox " Veuillez selectionner la feuille a imprimer svp"
Exit Sub
End If
wb_avions.Sheets(Me.ComboBox2.Value).PrintOut
wb_clients.Sheets(Me.ComboBox1.Value).PrintOutje voudrais pouvoir adapter mon premier code afin de pouvoir envoyer la feuille que je veux dans les deux classeurs
un classeur est AVIONS et l'autre CLIENTS
meRCI
Salut à toi,
Pourrais tu nous joindre tes fichiers car je comprends pas trop