Avatar billede CHC Forsker
22. oktober 2017 - 13:02 Der er 11 kommentarer og
1 løsning

VBA - gem "gyldige" faner som pdf

Hej

Jeg kan, på et ark via checkboxe, vælge nogle emner, som derefter får status af gyldig, disse emner har også hver deres fane. Disse faner kan jeg dermed udskrive (kun de gyldige) med nedenstående:

Sub printgyldige()

Dim sht As Worksheet

For Each sht In ThisWorkbook.Worksheets
If sht.Range("G2").Value = "Gyldig" Then sht.PrintOut

Next sht

End Sub

Tilsvarende har jeg en kode, som gemmer som pdf, men hvordan får jeg den til at gemme disse gyldige emner (faner).

Koden ser således ud:

Sub GemPDF()

  Dim PDFFile As String
      PDFFile = Application.GetSaveAsFilename(FileFilter:="PDF (*.PDF), *.PDF")

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

Kan de kombineres?
Jeg bruger Mac, men det skulle også gerne virke på Windows.

Vh CHC
Avatar billede Dan Elgaard Ekspert
22. oktober 2017 - 13:07 #1
Denne makro vil lave samme gennemløb, som du selv har lavet, og gemme hver fane, med sit eget navn i den sti, som du søætter i konstanten.

Sub GemGyldigeSomPDF

Const Sti = "C:\Mine\Gyldige\PDFer\"
Dim sht As Worksheet

For Each sht In ThisWorkbook.Worksheets
    If sht.Range("G2").Value = "Gyldig" Then
        sht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Sti & sht.Name, _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=True
    End If
Next sht

End Sub

Ret eventuelt selv detaljerne til :-)
Avatar billede Dan Elgaard Ekspert
22. oktober 2017 - 13:09 #2
Rettelse:

Const Sti As String = "C:\Mine\Gyldige\PDFer\"

Detalje: Er 'Backslag' også sti seperator på en Mac?
Hvis ikke, så skal dette også rettes til...
Avatar billede CHC Forsker
22. oktober 2017 - 14:30 #3
Hej Dan

Mange tak. Jeg har ikke prøvet det af endnu, men skal lige høre om ovenstående gemmer hvert ark som en separat fil eller som en samlet. Jeg har nemlig behov for en samlet fil.

Vh CHC
Avatar billede Dan Elgaard Ekspert
22. oktober 2017 - 15:24 #4
De bliver gemt separat, men du kan nemt lave det om til, at blive gemt som samlet...

Når du gennemløber fanerne/regnearkene, så vælger du blot de 'gyldige' ark, med attributten, 'False'.
Derved bliver samtlige 'gyldige' markeret på en gang.

Lidt i denne stil:
For Each sht In ThisWorkbook.Worksheets
    If sht.Range("G2").Value = "Gyldig" Then sht.Select False
Next sht

Derefter smider du de valgte Sheets ind i en Array og eksportere som normalt.

Prøv, at leg lidt med det :-)
Avatar billede CHC Forsker
22. oktober 2017 - 16:06 #5
Hej Dan

Tak igen, men det virker desværre ikke, hverken på Mac eller Windows.

I den kode, som jeg har i indlægget, er der lagt op til at man selv tager stilling til, hvor filen skal gemmes. Det ser ud til at din kode gemmer på c:

Kan der evt. arbejdes videre på den oprindelige, så den:
- Gemmer et valgfrit sted
- Gemmer samtlige gyldige ark i én fil
Avatar billede Dan Elgaard Ekspert
22. oktober 2017 - 18:05 #6
Jamen, så laver vi den da bare for dig :-)
Værsgo:
http://www.EXCELGAARD.dk/Files/Workbooks/DRF/GyldigeArkSomPDF.XLSm
Avatar billede CHC Forsker
03. november 2017 - 09:03 #7
Hej Dan

Tusind tak, indtil videre...

Når jeg klikker på gem knappen, så kommer der en "gem som" dialogboks frem i excel, hvor filtypen rigtigt nok står til pdf, men når jeg klikker gem, så sker der ikke andet end at dialogboksen forsvinder. Jeg har også forsøgt at søge på filen i stifinderen, men der kommer ikke noget frem.

Vh CHC
Avatar billede Dan Elgaard Ekspert
03. november 2017 - 15:43 #8
Det må være noget lokalt, for det virker - har lige testet igen...
Er du HELT sikker på, HVOR du gemmer filen?!?
(Hvorfor har du behov for at søge? Du ved vel, hvor du gemmer filen?!?)
Avatar billede CHC Forsker
04. november 2017 - 09:11 #9
Hej Dan.
Yes, jeg ved hvor jeg gemmer, men det var for at udelukke spørgsmål fra hjælpsomme brugere af dette forum, om jeg nu også er sikker å at den ikke er gemt et eller andet sted. :-)
Jeg har forsøgt på min Mac og to windows maskiner med denne løsning, men kan altså ikke få den til at gemme, det er lidt mystisk, for "gem som" boksen kommer som sagt frem. Jeg tror lige, at jeg prøver på en helt tredje windows i løbet af weekenden og vender tilbage til denne tråd.

Vh CHC
Avatar billede CHC Forsker
05. november 2017 - 10:55 #10
Hej Dan

Det virker! Tusind tak for hjælpen.

Vh CHC
Avatar billede Dan Elgaard Ekspert
06. november 2017 - 21:05 #11
Velbekomme...
...men, hvad gik galt på de andre tre maskiner???
Avatar billede CHC Forsker
07. november 2017 - 08:16 #12
Fejl 40 - sorry!
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

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