XL 2016 Solution pour Ouverture ou pas PDF.

BALANCIE

XLDnaute Junior
Bonjour à tous,

Pour une fois pas de problème à résoudre mais une solution.
J'avais demandé une aide sur la possibilité d'ouvrir où pas après une sauvegarde d'une feuille Mois du Pdf.
Voici la solution que j'ai retenue, elle fonctionne à merveille, cela peut aider.

Merci encore à Lolote83, vgendron, et Dranreb.

Cette solution vient de :
cs_Le Pivert

'
par cs_Le Pivert

Sub PdfMOIS()
Dim nom As String
Dim dossier As String
Dim ouverture As Boolean ' variable Booléenne
If MsgBox("Générer le PDF du Mois ?", vbYesNo, _
"Demande de confirmation") <> vbYes Then Exit Sub
If MsgBox("Voulez vous ouvrir le PDF?", vbYesNo, _
"Demande d'ouverture") <> vbYes Then
ouverture = False
Else
ouverture = True
End If
dossier = ChoixDossier
If dossier = "" Then Exit Sub
nom = dossier & "\" & Range("B2")

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=nom _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=ouverture 'variable Booléenne
End Sub
Function ChoixDossier()
If Val(Application.Version) >= 10 Then
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = ActiveWorkbook.Path & "\"
.Show
If .SelectedItems.Count > 0 Then
ChoixDossier = .SelectedItems(1)
Else
ChoixDossier = "/"
End If
End With
Else
ChoixDossier = InputBox("Quel Répertoire ?")
End If
End Function



Bonne Journée.
Daryl.B

 

Pièces jointes

  • TESTPDF.xlsm
    29.8 KB · Affichages: 17

job75

XLDnaute Barbatruc
Bonjour BALANCIE, Bernard,

Bah beaucoup de gens sont des adeptes du plus c'est long plus c'est bon.

Ceci est quand même plus concis :
Code:
Sub PdfMOIS()
Dim dossier$
With Application.FileDialog(msoFileDialogFolderPicker)
    .InitialFileName = ThisWorkbook.Path & "\"
    If .Show Then dossier = .SelectedItems(1) Else Exit Sub
End With
ActiveSheet.ExportAsFixedFormat xlTypePDF, dossier & "\" & ActiveSheet.Name, _
    OpenAfterPublish:=MsgBox("Voulez vous ouvrir le PDF?", 4) = 6
End Sub
La MsgBox "Générer le PDF du Mois ?" était totalement inutile.

A+
 

Pièces jointes

  • TESTPDF(1).xlsm
    31.9 KB · Affichages: 15

BALANCIE

XLDnaute Junior
Bonsoir job75,

Effectivement, c'est très largement plus court et diablement efficace.
Il et vrai que la mgbox....

Cela dit (écrit) et si je désire rajouter l'année au mois de l'onglet..(indiquée en E3)..
Juste pour continuer ma formation au VBA.

Merci encore, j'apprécie.
Daryl.B
 

job75

XLDnaute Barbatruc
Re,
Cela dit (écrit) et si je désire rajouter l'année au mois de l'onglet..(indiquée en E3)..
En B2 my dear !

Le plus simple est de mettre l'année dans le nom de l'onglet et d'entrer en B2 la formule classique :
Code:
=STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;31)
Fichier (2).

A+
 

Pièces jointes

  • TESTPDF(2).xlsm
    32.7 KB · Affichages: 11

BALANCIE

XLDnaute Junior
Bonjour job75 ,

Parfait, de plus le code est court et va à l'ensentiel.
Il est vrai que pour l'année, le plus simple est forcement efficace.

Merci pour le coup de main.

Ce problème est réglé de nouveau.
Merci encore à tous ceux qui m'ont apporter leur aide, soit par le forum soit en Mp.
Bonne journée à tous.

Daryl.B
 

Discussions similaires

Réponses
2
Affichages
193

Statistiques des forums

Discussions
312 192
Messages
2 086 056
Membres
103 110
dernier inscrit
Privé