Avatar billede lineriber Praktikant
23. november 2012 - 10:56 Der er 4 kommentarer og
1 løsning

Hjælp til VBA: Gem fil med et filnavn der er angivet i en celle i regnearket

Hej Eksperter

Jeg har en VBA kode der gemmer en excel-fil som en pdf-fil.
Mit spørgsmål er, om man i VBA'en kan angive at det filnavn som pdf-filen skal gemmes med, skal være den tekst der står i en celle i regnearket??

Sub Save_as_PDF()

    fileSaveName = Application.GetSaveAsFilename( _
    fileFilter:="PDF Files (*.pdf), *.pdf")

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        fileSaveName, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
   
End Sub

Mvh
Line
Avatar billede xenoxsis Nybegynder
23. november 2012 - 11:33 #1
Hvad med stien? Står den også i cellen eller er det kun filnavnet?
Avatar billede xenoxsis Nybegynder
23. november 2012 - 11:41 #2
Sub Save_as_PDF()
    Dim fileSavePath As String
    Dim fileSaveName As String
    Dim xlSheet As Worksheet
   
    Set xlSheet = Worksheets("Ark1")
    fileSavePath = "C:\"
    fileSaveName = xlSheet.Range("A1").Value & ".pdf"

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        fileSavePath & fileSaveName, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
End Sub


Du skal ændre xlSheet til det ark som du skal hente værdien i. Og fileSavePath til den sti der skal gemmes i (husk at slutte med \)
Avatar billede lineriber Praktikant
26. november 2012 - 08:35 #3
Nej, stien skal angives hver gang, dvs. at VBA'en skal lede mig ind i "Save as" hvor jeg kan browse mig frem til den sti jeg vil bruge - altså ligesom den den oprindelse VBA jeg havde kopieret ind i mit spørgsmål.
Dvs. eneste ænding er at filnavnet skal være forudfyldt så det er lig med værdien i celle A1.

Kan det lade sig gøre?
Avatar billede xenoxsis Nybegynder
29. november 2012 - 14:42 #4
Ahh ja det kan det da :)

Går ud fra det er sådan her du mener (det med fed skal du ændre):

Sub Save_as_PDF()

    fileSaveName = Application.GetSaveAsFilename(Range("A1"), "PDF Files (*.pdf), *.pdf")

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        fileSaveName, Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=True
   
End Sub
Avatar billede lineriber Praktikant
30. november 2012 - 08:55 #5
Perfekt, tusinde tak for hjælpen :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester