Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

printarea mit variablen Cells definieren

Forumthread: printarea mit variablen Cells definieren

printarea mit variablen Cells definieren
28.08.2002 08:13:06
Christian
Ich muss einen variablen Druckbereich festlegen, um diesen je nach gewünschten Ausdruck auf 1 Blatt zu skalieren.

ich habe dabei Cells(1,anfang) und Cells(zahl, ende) als Punkte des Bereiches.

Muss ich den varaiblen bestimmten Typen zuweisen, oder woran liegt es, das zwar die Range markiert werden kann, aber nicht als printarea definiert werden kann.

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: printarea mit variablen Cells definieren
29.08.2002 02:03:52
L.Vira
Option Explicit
Sub DB()
Dim Pa As String
Pa = Range(Cells(1, 1), Cells(5, 5)).Address
ActiveSheet.PageSetup.PrintArea = Pa
End Sub
Anzeige
;
Anzeige

Infobox / Tutorial

Variablen Druckbereich in Excel VBA festlegen


Schritt-für-Schritt-Anleitung

Um einen variablen Druckbereich in Excel VBA festzulegen, kannst Du folgende Schritte ausführen:

  1. Öffne den Visual Basic for Applications (VBA) Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Erstelle ein neues Modul:

    • Klicke auf Einfügen und dann auf Modul.
  3. Füge den folgenden Code ein:

    Option Explicit
    
    Sub DruckbereichFestlegen()
       Dim Pa As String
       Dim anfang As Integer
       Dim zahl As Integer
       Dim ende As Integer
    
       anfang = 1 ' Setze den Startindex
       zahl = 5   ' Setze den Endindex
       ende = 5   ' Beispiel für die Endzeile
    
       ' Definiere den Druckbereich
       Pa = Range(Cells(anfang, 1), Cells(zahl, ende)).Address
       ActiveSheet.PageSetup.PrintArea = Pa
    End Sub
  4. Ändere die Werte für anfang, zahl und ende nach Deinen Bedürfnissen, um den gewünschten Druckbereich festzulegen.

  5. Führe das Makro aus:

    • Klicke auf Run oder drücke F5, um das Makro auszuführen.

Nun hast Du erfolgreich einen variablen Druckbereich in Excel VBA festgelegt!


Häufige Fehler und Lösungen

  • Fehler: "Undefinierte Variable"

    • Stelle sicher, dass Du Option Explicit am Anfang Deines Codes hast, um sicherzustellen, dass alle Variablen deklariert sind.
  • Fehler: Druckbereich wird nicht gesetzt

    • Überprüfe, ob die anfang, zahl und ende Variablen korrekt gesetzt sind und innerhalb der Grenzen Deines Arbeitsblattes liegen.
  • Lösung für nicht druckbare Bereiche

    • Wenn Du Fehler beim Setzen des Druckbereichs bekommst, überprüfe, ob der Bereich tatsächlich Werte enthält und nicht leer ist.

Alternative Methoden

Falls Du eine andere Methode bevorzugst, um den Druckbereich in Excel festzulegen, kannst Du Range direkt verwenden:

ActiveSheet.PageSetup.PrintArea = "A1:E5"

Diese Methode ist einfacher, wenn der Druckbereich fest definiert ist. Für dynamische Bereiche ist jedoch die Verwendung von Variablen vorteilhaft.


Praktische Beispiele

Hier sind einige Beispiele, wie Du den Druckbereich in verschiedenen Szenarien festlegen kannst:

  1. Druckbereich für eine bestimmte Zeile:

    ActiveSheet.PageSetup.PrintArea = Range("A1:E1").Address
  2. Druckbereich für eine gesamte Spalte:

    ActiveSheet.PageSetup.PrintArea = Range("A:A").Address
  3. Dynamischer Druckbereich basierend auf der letzten Zeile:

    Dim lastRow As Long
    lastRow = Cells(Rows.Count, 1).End(xlUp).Row
    ActiveSheet.PageSetup.PrintArea = Range("A1:E" & lastRow).Address

Tipps für Profis

  • Verwende With-Anweisungen für eine lesbarere Code-Struktur:

    With ActiveSheet.PageSetup
       .PrintArea = Range(Cells(1, 1), Cells(5, 5)).Address
    End With
  • Automatisiere das Entfernen von Drucklinien:

    • Du kannst die Drucklinien in Excel leicht entfernen, indem Du die Option .DisplayGridlines auf False setzt.

FAQ: Häufige Fragen

1. Wie kann ich den Druckbereich in VBA dynamisch anpassen? Du kannst die Variablen anfang, zahl und ende so setzen, dass sie auf Daten in Deinem Arbeitsblatt basieren, z.B. durch die Verwendung der End(xlUp) Methode.

2. Ist es möglich, mehrere Druckbereiche in Excel VBA zu definieren? Ja, Du kannst mehrere Druckbereiche definieren, jedoch kann nur ein Druckbereich gleichzeitig aktiv sein. Du kannst den Druckbereich auch mit einem Komma trennen, wenn Du mehrere definieren möchtest.

3. Was ist der Unterschied zwischen PrintArea und PrintTitles? PrintArea definiert den Bereich, der gedruckt werden soll, während PrintTitles die Zeilen oder Spalten festlegt, die bei jedem Druckvorgang wiederholt werden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige