• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Naam PDF automatisch vullen.

Status
Niet open voor verdere reacties.

Woffels

Gebruiker
Lid geworden
8 jan 2006
Berichten
251
Hallo,

Ik wil in een excelsheet het huidige blad bewaren als PDF door op de "PDF" knop te drukken (zie sheet). Het blad moet dan bewaard worden naar een opgegeven locatie en met als naam een combinatie van de inhoud van twee cellen (zie plaatje). Maar het opslaan, in dit geval het publiceren naar PDF, mag nog niet plaatsvinden. De gebruiker bepaald uiteindelijk of de PDF wordt opgeslagen/gepubliceerd door op de "publiceren" knop te drukken in die dialoog. Dus de actie stopt zoals de screendump in het plaatje.
 

Bijlagen

  • ToPdf.jpg
    ToPdf.jpg
    90 KB · Weergaven: 62
  • ToPdf.xlsm
    ToPdf.xlsm
    18,7 KB · Weergaven: 30
Dat gaat zo:
Code:
PDFNaam = Range("B2") & "_" & Range("C2")
PADNaam = Range("B3") & "\"
 
Code:
Private Sub CommandButton1_Click()
l = Sheets("Blad1").Cells(2, 4)
f = Sheets("Blad1").Cells(2, 2) & "_" & Sheets("Blad1").Cells(2, 3)
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=l & "\" & f & ".pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub

Gr,

Joske
 
Hallo Joske,

Dit werkt goed, alleen wil ik niet dat het bestand al opgeslagen wordt, maar de dialoog zoals in het plaatje zichtbaar blijft. De gebruiker bepaald of hij het wil opslaan door op publiceren te drukken. In feite moet alleen de dialoog gevuld woorden met de gegevens uit de cellen, meer niet.
 
Je kunt "GetSaveAsFile" gebruiken

Code:
if right([d2],1) = "\" then
   SaveName =  [d2]&[b2]&"_"&[c3]
else
   SaveName =  [d2]&"\"&[b2]&"_"&[c3]
end if
fileSaveName = Application.GetSaveAsFilename(InitialFileName:=SaveName, fileFilter:="PDF (*.pdf), *.pdf")
if FileSaveName NOT False
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fileSaveName
   msgbox("opgeslagen als " & FileSaveName)
else
   msgbox("geannuleerd")
endif
 
Bedankt,

De oplossing van wampier werkt het beste, met een kleine aanpassing.

Code:
if right([d2],1) = "\" then
   SaveName =  [d2]&[b2]&"_"&[c2]
else
   SaveName =  [d2]&"\"&[b2]&"_"&[c2]
end if
fileSaveName = Application.GetSaveAsFilename(InitialFileName:=SaveName, fileFilter:="PDF (*.pdf), *.pdf")
if FileSaveName NOT False then
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fileSaveName
   msgbox("opgeslagen als " & FileSaveName)
else
   msgbox("geannuleerd")
endif
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan