Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
1524to1528
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
Inhaltsverzeichnis

Pagesetup funktioniert nicht und langsam

Pagesetup funktioniert nicht und langsam
12.11.2016 17:34:56
Peter
Hallo Ihr Excelspezialisten,
ich habe mir eine Druckvorschau erstellt. Leider habe ich ein Problem, durch die Footer
ist das ganze extrem langsam.
Wenn ich die Footer herausnehme läuft das Ganze sehr schnell.
Wo liegt bitte der Fehler? Was kann man dagegen machen?
Sub Druckvorschau_2016_11_12()
SpalteL = Range("M65536").End(xlUp).Row      'SpalteL ist der Massstab für das berechnen der  _
letzten beschriebenene Zelle in Spalte K = PLZ da immer ausgefüllt
Sheets("Tabelle1").Select
Makro_Spalten_ausblenden
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.PrintArea = ""    'Druckbereich aufheben
.LeftFooter = ""    'linke Fusszeile löschen
.CenterFooter = ""  'mittlere Fusszeile löschen
.PrintTitleRows = "$1:$1"
.PrintArea = Range("A1:Y" & SpalteL).Address
.LeftFooter = "&""Arial,Fett""&14" & "aktuelles Datum: &D"
.CenterFooter = "&""Arial,Fett""&14" & Worksheets("Hilfstabelle").Range("D3") & " Anzahl:   " &  _
Worksheets("Hilfstabelle").Range("F3") & Chr(10) & "&""Arial,Fett""&14" & Worksheets("Hilfstabelle").Range("D4") & " Anzahl:   " & Worksheets("Hilfstabelle").Range("F4") & Chr(10) & "&""Arial,Fett""&14" & Worksheets("Hilfstabelle").Range("D5") & " Anzahl:   " & Worksheets("Hilfstabelle").Range("F5")
.RightFooter = "&""Arial,Fett""&14" & Worksheets("Hilfstabelle").Range("D6") & " Anzahl:   " &  _
Worksheets("Hilfstabelle").Range("F6") & Chr(10) & "&""Arial,Fett""&14" & Worksheets("Hilfstabelle").Range("D7") & " Anzahl:   " & Worksheets("Hilfstabelle").Range("F7") & Chr(10) & "&""Arial,Fett""&14" & Worksheets("Hilfstabelle").Range("D8") & " Anzahl:   " & Worksheets("Hilfstabelle").Range("F8")
Application.PrintCommunication = True
ActiveSheet.PrintPreview
Makro_alle_Spalten_einblenden
End With
ActiveSheet.Range("A1").Select
End Sub

Besten Dank für Eure Hilfe.
Gruss Peter

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

Betreff
Datum
Anwender
Anzeige
AW: Pagesetup funktioniert nicht und langsam
13.11.2016 10:13:55
fcs
Hallo Peter,
du hast einen logischen Fehler im Makro:
Tabelle muss selektiert werden bevor die letzte Zeile im Blatt berechnet wird.
Dann berechnest du die Letzte Zeile in Spalte M und nicht wie in denem Kommentar angegeben in Spalte K.
Die Zeile
    Application.PrintCommunication = False

führt nach meiner Erfahrung zu Problemen, wenn man in dem gleichen Makro auch direkt die Seitenvorschau oder den Ausdruck startet.
Nach Microsoft-Auskunft in der Hilfe soll so der PageSetup beschleunigt werden, aber ich hab da schon öfters nur Müll in Druck/Vorschau erhalten.
Diese Zeile und die entsprechend Zeile mit "= True" einfach weglassen.
Außerdem musst du aufpassen, dass die Gesamtzeichenzahl für eines der Footer-Elemente nicht 255 Zeichen überschreitet. Das ist meines Wissens eine Excel-Grenze.
Gruß
Franz
Sub Druckvorschau_2016_11_12()
Dim wksH As Worksheet
Set wksH = Worksheets("Hilfstabelle")
Sheets("Tabelle1").Select 'Tabelle muss selektiert werden bevor letzte Zeile berechnet wird
'SpalteL ist der Massstab für das berechnen der letzten beschriebenene Zelle in _
Spalte K = PLZ da immer ausgefüllt   - warum dann in nächster Zeile "M65536"  ?
SpalteL = Range("M65536").End(xlUp).Row
Makro_Spalten_ausblenden
'Application.PrintCommunication = False     'Problemzeile unter Excel 2010
Application.ScreenUpdating = False
With ActiveSheet.PageSetup
.PrintArea = ""    'Druckbereich aufheben
.LeftFooter = ""    'linke Fusszeile löschen
.CenterFooter = ""  'mittlere Fusszeile löschen
.PrintTitleRows = "$1:$1"
.PrintArea = Range("A1:Y" & SpalteL).Address
.LeftFooter = "&""Arial,Fett""&14" & "aktuelles Datum: &D"
.CenterFooter = _
"&""Arial,Fett""&14" & wksH.Range("D3") & " Anzahl:   " & wksH.Range("F3") & Chr(10) _
& "&""Arial,Fett""&14" & wksH.Range("D4") & " Anzahl:   " & wksH.Range("F4") & Chr(10)  _
_
& "&""Arial,Fett""&14" & wksH.Range("D5") & " Anzahl:   " & wksH.Range("F5")
.RightFooter = _
"&""Arial,Fett""&14" & wksH.Range("D6") & " Anzahl:   " & wksH.Range("F6") & Chr(10) _
& "&""Arial,Fett""&14" & wksH.Range("D7") & " Anzahl:   " & wksH.Range("F7") & Chr(10)  _
_
& "&""Arial,Fett""&14" & wksH.Range("D8") & " Anzahl:   " & wksH.Range("F8")
'Application.PrintCommunication = True      'Problemzeile unter Excel 2010
End With
ActiveSheet.PrintPreview
Makro_alle_Spalten_einblenden
Application.ScreenUpdating = True
ActiveSheet.Range("A1").Select
End Sub

Anzeige
AW: Pagesetup funktioniert nicht und langsam
13.11.2016 12:45:29
Peter
Hallo Franz,
besten Dank für Deine Hilfe.
Ich habe das Makro ausprobiert und festgestellt, dass eine Arbeit mit Header und Footer zumindest
seit Einführung Excel 2010 keinen Sinn mehr macht. Das Programm wird extrem langsam.
Ich werde mir für meine Bedürfnisse in diesem Programm eine andere Lösung erstellen.
Ich wünsche Dir noch ein schönes Wochenende.
Gruss Peter

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige