Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[EXCEL]Pagina-instellingen voor meerder documenten

Pagina: 1
Acties:

  • ThaSorcerer
  • Registratie: Juli 2006
  • Laatst online: 25-11 11:55
Ik heb een probleempje,

via ons systeem op het werk komen er overzichten uit in Excel formaat. Maar om deze overzichten te kunnen afdrukken moeten al deze documenten op Pagina-instelling Liggend + 85% komen.

Nu doe ik het met de hand, stuk voor stuk, maar is er een mogelijkheid om meerdere (alle) bestanden in een keer de juiste paginainstelling te geven?

Alvast bedankt voor het meedenken

  • Lukse
  • Registratie: Januari 2004
  • Laatst online: 12-04-2023
Je zou een macro kunnen schrijven die een voor een de bestanden opent, de instellingen aanpast, en terug opslaat.

Als je eerst zelf een macro opneemt en dan gewoon de volgende stappen doet:
- Workbook openen
- Instellingen aanpassen
- Workbook opslaan en sluiten
en dan de macro stopt, dan heb je hiervoor de code al.

Je moet dan enkel nog even de code op google zoeken om door alle bestanden in een directory te loopen (zoek bv. op: vba loop through dir)

  • ThaSorcerer
  • Registratie: Juli 2006
  • Laatst online: 25-11 11:55
Owkee mn VB is niet zo best.. maar ik heb nu dit, alleen heb ik niet het idee dat hij wat doet als ik macro uitvoeren klik:
' Kredietoverzichten Macro
' De macro is opgenomen op 17-4-2008 door ThaSorcerer.
'

strDir = "F:\FINANCIEN\BEHEER\KREDIETOVERZICHTEN\Kredietoverzichten"
'If a file has been found
Do While strFile = "F:\FINANCIEN\BEHEER\KREDIETOVERZICHTEN\Kredietoverzichten\*.xls"

ChDir "F:\FINANCIEN\BEHEER\KREDIETOVERZICHTEN\Kredietoverzichten"
Workbooks.Open Filename:= _
"F:\FINANCIEN\BEHEER\KREDIETOVERZICHTEN\Kredietoverzichten\*.xls"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = "&A"
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = "Page &P"
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.787401575)
.RightMargin = Application.InchesToPoints(0.787401575)
.TopMargin = Application.InchesToPoints(0.984251969)
.BottomMargin = Application.InchesToPoints(0.984251969)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 85
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWorkbook.Save
Loop

End Sub
enig idee wat ik nog moet wijzigen iemand?

  • Lukse
  • Registratie: Januari 2004
  • Laatst online: 12-04-2023
Probeer dit eens:

Visual Basic:
1
2
3
4
5
6
7
8
9
10
11
Dim fn As String
fn = Dir("F:\FINANCIEN\BEHEER\KREDIETOVERZICHTEN\Kredietoverzichten\*.xls")
Do While Len(fn) > 0
    Workbooks.Open Filename := fn

    'Zet hier de code om de pagina instellingen aan te passen

    ActiveWorkbook.Save
    ActiveWorkbook.Close
    Filename = Dir
Loop


*Is uit het hoofd geschreven, dus kan misschien kleine foutjes bevatten.