Exporter en PDF les lignes d'un tableau selon un "critère"
Bonjour à tous,
Je suis en train de travailler sur une checklist et je souhaiterais ajouter une macro permettant d'exporter en PDF (sur le bureau de l'utilisateur) les lignes du tableau selon le contenu présent dans la colonne "CHECK".
Je souhaite 3 résultats (un PDF par résultat si possible reprenant: l'état de la checklist [à faire/fait/non utilisé]; le nom du client ["M.CLIENT"] et le code postal [75001]):
- Ce qui a été fait ("X" dans la cellule de la colonne CHECK)
- Ce qui reste à faire (la cellule de la colonne CHECK reste vide)
- Ce qui n'est pas utilisé (autrement dit, ce qui n'est pas à faire. "NU" dans la cellule de la colonne CHECK)
Plutôt qu'une explication compliquée et floue
Je reste dans le coin pour les questions
Merci beaucoup pour votre aide !
Petit up, en attendant des réponses, j'ai commencé à bricoler un petit peu et du coup à revoir aussi mon affichage (maudit cellule fusionnée...).
Des avis ? Peut-on optimiser ? Ou est ce que ça paraît viable ? (en tout cas, ça fonctionne)
Dim MONDOCUMENT As String
Dim CHEMIN As String
ActiveSheet.Range("$B$4:$J$20").AutoFilter Field:=9, Criteria1:="nu"
CHEMIN = "C:\Users\" & Environ("username") & "\Desktop\"
MONDOCUMENT = "CHECKLIST NON UTILISE" & " " & Range("G2").Value & " " & Range("I2").Value & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
CHEMIN & MONDOCUMENT, Quality:=xlQualityMinimum _
, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
ActiveSheet.Range("$B$4:$J$20").AutoFilter Field:=9, Criteria1:="x"
CHEMIN = "C:\Users\" & Environ("username") & "\Desktop\"
MONDOCUMENT = "CHECKLIST FAIT" & " " & Range("G2").Value & " " & Range("I2").Value & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
CHEMIN & MONDOCUMENT, Quality:=xlQualityMinimum _
, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
ActiveSheet.Range("$B$4:$J$20").AutoFilter Field:=9, Criteria1:="="
CHEMIN = "C:\Users\" & Environ("username") & "\Desktop\"
MONDOCUMENT = "CHECKLIST A FAIRE" & " " & Range("G2").Value & " " & Range("I2").Value & ".pdf"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
CHEMIN & MONDOCUMENT, Quality:=xlQualityMinimum _
, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
ActiveSheet.Range("$B$4:$J$20").AutoFilter Field:=9
Bonjour,
Voici un essai avec une boucle :
sub Export()
CHEMIN = "C:\Users\" & Environ("username") & "\Desktop\"
tcrit = array("nu", "x", "=") 'critères
tlib = array("NON UTILISE", "FAIT", "A FAIRE") 'libellé correspondant repris dans nom pdf
with ActiveSheet
for i = lbound(tcrit) to ubound(tcrit) 'pour chaque critère
MONDOCUMENT = "CHECKLIST " & tlib(i) & " " & Range("G2").Value & " " & Range("I2").Value & ".pdf" 'lib
.Range("$B$4:$J$20").AutoFilter Field:=9, Criteria1:=tcrit(i) 'filtre
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=CHEMIN & MONDOCUMENT, IgnorePrintAreas:=False
next i
end with
end subCdlt,