Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
676to680
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
676to680
676to680
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA - Druck-Layout läuft langsam

VBA - Druck-Layout läuft langsam
07.10.2005 20:37:46
joko0803
Hallo alle zusammen,
ich habe hier ein Problem mit der Steuerung des Layouts für alle Arbeitsblätter einer Arbeitsmappe.
Ich habe ein Makro, das in einer Makro-Arbeitsmappe abgelegt ist. Das Seitenlyout wir auch ganz toll erstellt, so lange die Tabellen in der gelichen Arbeitsmappe hinterlegt sind.
Immer wenn das Makro aber Blätter einer anderen Arbeitsmappe formatieren soll wir die Formatierung NUR IM ERSTEN BLATT ausgeführt.
Kann mir von euch jemand einen Tipp geben wie ich das beheben kann, denn die Regel ist, dass das Makro Layout einer anderen Arbeitsmappe steuern soll?
Danke und Gruß
John

Private Sub Layout()
For blatt = 1 To Sheets.Count - 1
Sheets(blatt).Select False
Next blatt
With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0.17)
.RightMargin = Application.InchesToPoints(0.17)
.TopMargin = Application.InchesToPoints(0.7)
.BottomMargin = Application.InchesToPoints(0.44)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.17)
.CenterFooter = "&8Seite &P von &N"
.CenterHorizontally = True
.Orientation = xlLandscape
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Zoom = 65
End With
Cells(5, 1).Select
ActiveWindow.DisplayGridlines = False
Sheets(Sheets.Count).Select
End Sub

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Druck-Layout läuft langsam
07.10.2005 20:49:45
{Boris}
Hi,
das PageSetup musst du für jedes Blatt einzeln machen. Mehrfachmarkierunggeht hier nicht.
Grüße Boris
AW: VBA - Druck-Layout läuft langsam
07.10.2005 20:51:56
joko0803
Hallo Boris,
danke, dann kann ich mir ja die weitere Suche im www sparen.
Gruß
John
Einspruch ?!
07.10.2005 21:54:15
Ramses
Hallo Boris
Dieses Makro steht in "Mappe_A.xls"
Option Explicit

Private Sub Layout()
    Dim blatt As Integer
    Dim tWkb As Workbook
    Set tWkb = Workbooks(ActiveWorkbook.Name)
    With tWkb
        For blatt = 1 To Sheets.Count - 1
            .Sheets(blatt).Select False
        Next blatt
        With tWkb.ActiveSheet.PageSetup
            .LeftMargin = Application.InchesToPoints(0.17)
            .RightMargin = Application.InchesToPoints(0.17)
            .TopMargin = Application.InchesToPoints(0.7)
            .BottomMargin = Application.InchesToPoints(0.44)
            .HeaderMargin = Application.InchesToPoints(0.5)
            .FooterMargin = Application.InchesToPoints(0.17)
            .CenterFooter = "&8Seite &P von &N"
            .CenterHorizontally = True
            .Orientation = xlLandscape
            .PaperSize = xlPaperA4
            .FirstPageNumber = xlAutomatic
            .Zoom = 65
        End With
        .ActiveSheet.Cells(5, 1).Select
        ActiveWindow.DisplayGridlines = False
        .Sheets(Sheets.Count).Select
    End With
End Sub

Und wird aus der AKTIVEN "Mappe_B.xls" hiermit aufgerufen
Option Explicit

Sub demo()
    Application.Run "Mappe_A.xls!layout"
End Sub


Also bei mir funktioniert das für alle markierten Sheets ;-)
Gruss Rainer
Anzeige
funzt bei mir nicht
08.10.2005 11:55:49
joko0803
Hallo Rainer,
danke für deinen Kommentar. Es freut mich, dass du das Problem erkannt hast.
Leider arbeit ich immer noch mit der Version 9.0 (Office 2000). Da scheint das so "noch" nicht zu klappen.
Hat es doch aber auch dort wohl den Nachteil, dass diese Makro, das du " Sub demo()" nennst wohl auch in der "Mappe_B" hinterlegt sein muss?
Danke
John
AW: funzt bei mir nicht
08.10.2005 19:53:26
Ramses
Hallo
Natürlich muss das Makro "Demo" in Mappe B.
Irgendwie musst du ja das Makro in Mappe A aufrufen.
Ich sehe keinen Grund, warum das in E2000 noch nicht gehen sollte.
Gruss Rainer
AW: funzt bei mir nicht
08.10.2005 20:10:52
joko0803
Hallo Rainer,
leider ist es so, dass die User die Datei, aus der sie das Makro starten selbst aus einem Download von SAP erstellen. Denen möchte/kann ich niemals beibringen auch noch das Makro da rein zu kopieren ... unterm Strich ist es dann einfacher für mich, dass sie die Laufzeit von ca. 4 bis 7 Minuten, die das Erstellen des Layouts für ca. 60 bis 110 Tabellenblätter benötigt aufzuwenden.
Trotzem danke, denn ich hab ja schließlich dabei was gelernt.
Gruß
John
Anzeige
AW: funzt bei mir nicht
09.10.2005 11:01:28
Ramses
Hallo
Dann leg das Makro doch in die "PERSONL.XLS".
Diese Datei wird beim Start geladen. Zusätzlich kannst du noch einen Commandbar-Menüpunkt erstellen.
Dann müssen deine User nur noch den Menüpunkt anklicken.
Informationen zum Erstellen einer Symbolleiste oder Menüpunktes findest du hier
http://www.online-excel.de/excel/grusel_vba.php?f=2
"Symbolleisten - Button einfügen"
Gruss Rainer
AW: funzt bei mir nicht
10.10.2005 20:17:02
joko0803
Hallo Rainer,
noch mal Danke, hier wir man wirklich rundum verwöhnt :-))
Gruß
John

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige