AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein VBA Excel Pagesetup Printarea festlegen
Thema durchsuchen
Ansicht
Themen-Optionen

VBA Excel Pagesetup Printarea festlegen

Ein Thema von gabneo · begonnen am 11. Mär 2009 · letzter Beitrag vom 11. Mär 2009
Antwort Antwort
gabneo

Registriert seit: 15. Okt 2006
Ort: Deutsche Toskana :)
93 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

VBA Excel Pagesetup Printarea festlegen

  Alt 11. Mär 2009, 10:07
Hallo Delphianer,

ich bin am Verzweifeln. Habe schon sehr lange gegoogelt aber nichts gefunden.

Mein Problem ist: Ich habe in Excel eine Liste mit 501 Seiten und möchte den Druckbereich per Makro festlegen. Nur wie kann man die Seitengröße festlegen? Meine Seiten sind immer genau 76 Zeilen Hoch und 20 Zeilen Breit!
Hört sich einfach an, aber über Einfügen von Pagebreaks (HPageBreak, VPagebreak) bekommt man in Excel Probleme mit der zu großen Spalten/Zeilenzahl pro Seite und Excel fügt weitere pagebreaks ein die die Seiten dann zerschneiden.
Am besten löst man es über Printarea. Interessanterweise muss die Seitengröße dort Einstellbar sein, da man unterschiedliche Seitengrößen vererben kann. Aber wie?

Hier mal der Code den ich schon habe:

Delphi-Quellcode:
Sub Druckbereich()

Application.ScreenUpdating = False
         
With ActiveSheet
    
' Hier muss noch die Seitengröße eingetragen werden?!

'z.B. .pagesetup.pagesize = rows(76),cols(20) <- nur zum verdeutlichen was ich suche

     .PageSetup.PrintArea = "$A$1:$S$38076"

End With

Application.ScreenUpdating = True

End Sub
Please Help me out

Vielen Dank und greez
gabneo
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: VBA Excel Pagesetup Printarea festlegen

  Alt 11. Mär 2009, 10:08
Lass dir doch die Aktion als Makro aufzeichnen
Markus Kinzler
  Mit Zitat antworten Zitat
gabneo

Registriert seit: 15. Okt 2006
Ort: Deutsche Toskana :)
93 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#3

Re: VBA Excel Pagesetup Printarea festlegen

  Alt 11. Mär 2009, 10:12
Dabei kommt nur der Code raus den man oben sieht.

Er Erzeugt dann nur .PageSetup.PrintArea = "$A$1:$S$38076" aber keinen Code der zeigt welche größe er als Vorlage verwendet hat...
  Mit Zitat antworten Zitat
gabneo

Registriert seit: 15. Okt 2006
Ort: Deutsche Toskana :)
93 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

Re: VBA Excel Pagesetup Printarea festlegen

  Alt 11. Mär 2009, 13:07
selber gelöst

Delphi-Quellcode:
Public Sub Workbook_BeforePrint(Cancel As Boolean)
'Quelle: Kolja Aidam IT-Services Copyright 2009

Dim xelRows As Long, i As Long

Application.ScreenUpdating = False

On Error Resume Next

With ActiveSheet

.ResetAllPageBreaks
For xelRows = 1 To Range("A65536").End(xlUp).Row
If Rows(xelRows).Hidden = False Then i = i + 1
If i Mod 76 = 0 Then .HPageBreaks.Add Cells(xelRows + 1, 1)
Next

.PageSetup.PrintArea = "$A$1:$S$38076"

.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1
Set .HPageBreaks(1).Location = Range("A77")

End With

Application.ScreenUpdating = True

End Sub
greez
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:02 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz