seite einrichten
28.06.2004 18:17:07
stefan
wer kann mir helfen ?
Datei "Ziel" hat alle Blätter der Datei A, und B. (Wurden per Vba zusammenkopiert)
Die Blätter der Datei A sind aber breiter als die der Datei B.
Für das Ausdrucken muss ich also alle Blätter in der Datei "Ziel" markieren die
genauso heissen wie alle Blätter der Datei A.
Jetzt zu meiner Frage:
wie kann ich aus Datei A alle Blattnamen in ein Array auslesen
und mit diesem Array alle Blätter in der Datei "Ziel" die Seite einrichten ?
hab`s hier mal versucht, leider wird aber immer nur das erste Blatt so eingerichtet wie ich das will, alle folgenden werden gar nicht eingerichtet.
Dim arr() as String
Dim wks as Worksheet
Dim wbz as Workbook
Dim icounter as Integer
workbooks.open filename :="Datei A.xls"
ReDim arr(1 To ActiveWorkbook.Worksheets.Count)
For Each wks In ActiveWorkbook.Worksheets
arr(icounter) = wks.Name
icounter = icounter + 1
Next wks
ActiveWorkbook.Close
wbZ.Activate
Sheets(arr).Select
Sheets("Hans").Activate
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.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.4921259845)
.FooterMargin = Application.InchesToPoints(0.4921259845)
.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 = 65
End With
Irgendwo ist da der Wurm in meiner Arraydefinition drin.
Besten Dank !
PS: ich kann die Seite leider erst in der Datei "Ziel" einrichten da ich die Datei A für andere Dinge so brauche.
Stefan