Avatar billede cygnet Praktikant
27. september 2006 - 14:25 Der er 2 kommentarer og
1 løsning

Makro - lav PDF som kun er en side bred.

Jeg har prøvet at lave en makro der vælger en række faneblade og så skriver dem ud. Problemet opstår dog ved at de kun skal fylde én side i bredde. Da jeg prøver at få makroen til at tage alle de faner på én gang, sætter den kun den første op. Så var jeg nødtil at tage et af gangen, men synes godt nok det er blevet slow nu.

Det skal gøres med ret mange regneark, så håber i kan hjælpe.

Min makro ser sådan ud lige nu - som i kan se gentager jeg processen med at sikre side bredden for hvertfane blad, for derefter at vælge dem alle og printe. Det tager dog 15-20 sekunder pr. styk, lidt kedeligt at kigge på.

Håber i kan hjælpe.

Sub side()
'
' side Makro
' Makro indspillet 18-09-2006 af
'
' Genvejstast:Ctrl+s
'
    Sheets("Resultatopgoerelse-w").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$12"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$242"
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = "Side &P"
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.590551181102362)
        .RightMargin = Application.InchesToPoints(0.590551181102362)
        .TopMargin = Application.InchesToPoints(0.393700787401575)
        .BottomMargin = Application.InchesToPoints(0.984251968503937)
        .HeaderMargin = Application.InchesToPoints(0.511811023622047)
        .FooterMargin = Application.InchesToPoints(0.511811023622047)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Balance-e").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$11"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$168"
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = "Side &P"
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.590551181102362)
        .RightMargin = Application.InchesToPoints(0.590551181102362)
        .TopMargin = Application.InchesToPoints(0.393700787401575)
        .BottomMargin = Application.InchesToPoints(0.984251968503937)
        .HeaderMargin = Application.InchesToPoints(0.511811023622047)
        .FooterMargin = Application.InchesToPoints(0.511811023622047)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Noter resultatopgoerelse-r").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$12"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$476"
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = "Side &P"
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.590551181102362)
        .RightMargin = Application.InchesToPoints(0.590551181102362)
        .TopMargin = Application.InchesToPoints(0.393700787401575)
        .BottomMargin = Application.InchesToPoints(0.984251968503937)
        .HeaderMargin = Application.InchesToPoints(0.511811023622047)
        .FooterMargin = Application.InchesToPoints(0.511811023622047)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Noter balance-t").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$12"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$557"
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = "Side &P"
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.590551181102362)
        .RightMargin = Application.InchesToPoints(0.590551181102362)
        .TopMargin = Application.InchesToPoints(0.393700787401575)
        .BottomMargin = Application.InchesToPoints(0.984251968503937)
        .HeaderMargin = Application.InchesToPoints(0.511811023622047)
        .FooterMargin = Application.InchesToPoints(0.511811023622047)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Paategning - o").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$5"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$79"
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = "Side &P"
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.590551181102362)
        .RightMargin = Application.InchesToPoints(0.590551181102362)
        .TopMargin = Application.InchesToPoints(0.393700787401575)
        .BottomMargin = Application.InchesToPoints(0.984251968503937)
        .HeaderMargin = Application.InchesToPoints(0.511811023622047)
        .FooterMargin = Application.InchesToPoints(0.511811023622047)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets(Array("Resultatopgoerelse-w", "Balance-e", "Noter resultatopgoerelse-r", _
        "Noter balance-t", "Paategning - o")).Select
    Sheets("Paategning - o").Activate
   
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
        "Adobe PDF på Ne00:", Collate:=True
    ActiveWindow.Close
End Sub
Avatar billede kabbak Professor
27. september 2006 - 22:45 #1
Jeg har fjernet noget af det, som jeg mener kan undværes, prøv at teste, der er måske mere, som du kan fjerne.

Sub side()
'
' side Makro
' Makro indspillet 18-09-2006 af
'
' Genvejstast:Ctrl+s
'
    Sheets("Resultatopgoerelse-w").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$12"
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$242"
    With ActiveSheet.PageSetup
        .PrintQuality = 300
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Balance-e").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$11"
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$168"
    With ActiveSheet.PageSetup
        .CenterFooter = "Side &P"
        .PrintQuality = 300
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Noter resultatopgoerelse-r").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$12"
        .PrintTitleColumns = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$476"
    With ActiveSheet.PageSetup
        .CenterFooter = "Side &P"
        .PrintQuality = 300
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Noter balance-t").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$12"
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$557"
    With ActiveSheet.PageSetup
        .CenterFooter = "Side &P"
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets("Paategning - o").Select
    With ActiveSheet.PageSetup
        .PrintTitleRows = "$1:$5"
    End With
    ActiveSheet.PageSetup.PrintArea = "$A$1:$G$79"
    With ActiveSheet.PageSetup
        .CenterFooter = "Side &P"
        .PrintQuality = 300
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperA4
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 20
    End With
    Sheets(Array("Resultatopgoerelse-w", "Balance-e", "Noter resultatopgoerelse-r", _
        "Noter balance-t", "Paategning - o")).Select
    Sheets("Paategning - o").Activate
   
    ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
        "Adobe PDF på Ne00:", Collate:=True
    ActiveWindow.Close
End Sub
Avatar billede cygnet Praktikant
03. juni 2011 - 11:04 #2
Kan du ligge et svar?
Avatar billede kabbak Professor
03. juni 2011 - 23:07 #3
;-))
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