Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
444to448
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
444to448
444to448
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

seite einrichten

seite einrichten
28.06.2004 18:17:07
stefan
Hallo excelfans,
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

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: seite einrichten
28.06.2004 19:58:46
Christoph
Hallo Stefan,
1: das Workbook wbz wird nirgends definiert. (Set wbz = ...)
2: Das Einrichten der Seite führst du nur für "Sheets("Hans")" aus.
3: Du deklarierst den Array von 1 bis Sheets.Count.
Aber in:
arr(icounter) = wks.Name
icounter = icounter + 1
ist icounter für den ersten Array-Wert noch 0. ich fürchte, das geht schief.
Wenn du anschließend die "Array-Seiten" einrichten willst, dann musst du auch den Array abarbeiten, also:
For i = LBound(arr) To UBound(arr)
With Sheets(arr(i)).PageSetup
....
Next i
gruß
Christoph
AW: seite einrichten
Stefan
super, danke Christoph hat alles hervorragend geklappt !
Stefan
Anzeige
Danke für die Rückmeldung (o.T.)
30.06.2004 09:26:01
Christoph

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige