Zum Hauptinhalt springen

Wie druckt man bestimmte Blätter basierend auf Zellwerten in Excel?

Author: Sun Last Modified: 2025-05-28

Haben Sie jemals versucht, bestimmte Blätter basierend auf einem Zellenwert zu drucken? In diesem Artikel werde ich einige Beispiele zur Lösung dieses Problems vorstellen. Wenn Sie interessiert sind, lesen Sie bitte weiter.

Blatt basierend auf einer Zelle mit VBA drucken

Blatt basierend auf einer benachbarten Zelle mit VBA drucken


Blatt basierend auf einer Zelle mit VBA drucken

Angenommen, es gibt zwei Blätter, und Sie möchten Blatt1 oder Blatt2 oder beide Blätter basierend auf Zelle A1 in Blatt1 drucken. Bitte gehen Sie wie folgt vor:

In diesem Fall bedeutet die Eingabe von 1, das erste Blatt zu drucken, die Eingabe von 2, das zweite Blatt zu drucken, und 3, um beide Blätter zu drucken.

1. Geben Sie je nach Bedarf 1, 2 oder 3 in Zelle A1 im ersten Blatt ein, und drücken Sie die Tasten Alt + F11, um das Fenster Microsoft Visual Basic for Applications zu öffnen.

2. Klicken Sie auf Einfügen > Modul, und fügen Sie den folgenden Code in das Modul Skript ein. Siehe Screenshot:
A screenshot of inserting a Module in the VBA window

VBA: Blatt basierend auf Zellenwert drucken

Sub PrintStuff()
'UpdayebyExtendoffice20180811
    Dim xRgVal As Variant
    Dim xSheets As Sheets
    Set xSheets = ActiveWorkbook.Worksheets
    xRgVal = xSheets(1).Range("A1").Value
    If (IsNumeric(xRgVal)) And (Len(xRgVal) = 1) Then
        Select Case xRgVal
            Case 1
                xSheets(1).PrintOut
            Case 2
                xSheets(2).PrintOut
            Case 3
                xSheets(1).PrintOut
                xSheets(2).PrintOut
            Case Else
                MsgBox "Enter1, 2 or 3 into A1 (1 print Sheet1 2 print Sheet2 3 print Sheet1 and Sheet2 ", , "KuTools For Excel"
                Exit Sub
            End Select
    Else
        Exit Sub
    End If
End Sub

A screenshot of VBA code inserted in the Module window

3. Drücken Sie die Taste F5, um das/die Blatt/Blätter direkt zu drucken.


Blatt basierend auf einer benachbarten Zelle mit VBA drucken

Wenn Sie mehrere Blätter in einer Arbeitsmappe haben und eines oder mehrere Blätter basierend auf Zellenwerten aus dieser Arbeitsmappe drucken möchten, können Sie wie folgt vorgehen:

1. Erstellen Sie ein neues Blatt namens Kontrollblatt in der von Ihnen verwendeten Arbeitsmappe, und listen Sie alle Blattnamen in Spalte A auf (einschließlich oder ausschließlich des Kontrollblatts, je nach Bedarf). Siehe Screenshot:
A screenshot showing the 'Control Sheet' with sheet names listed in column A in Excel

2. Geben Sie „Drucken“ in die benachbarte Zelle neben dem Blattnamen ein, wenn Sie es drucken möchten. Siehe den gezeigten Screenshot.
A screenshot of the 'Control Sheet' with 'print' values entered in the adjacent cells next to the sheet names

3. Drücken Sie die Tasten Alt + F11 um das Fenster Microsoft Visual Basic for Applications zu aktivieren, und klicken Sie auf Einfügen > Modul. Siehe Screenshot:
A screenshot of inserting a Module in the VBA window

4. Fügen Sie den folgenden Code in das Modul ein, und drücken Sie die Taste F5, um den Code auszuführen.

VBA: Drucken basierend auf einer benachbarten Zelle

Sub CreateControlSheet()
'UpdatebyExtendoffice20170811
    Dim i As Integer
    Dim xCSheetRow As Integer
    Dim xSName As String
    Dim xCSheet As Variant
    Dim xRgVal As String
    On Error Resume Next
    xSName = "Control Sheet"
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set xCSheet = ActiveWorkbook.Worksheets(xSName)
    xCSheetRow = xCSheet.Range("B65536").End(xlUp).Row
    For i = 2 To xCSheetRow
        xRgVal = xCSheet.Range("B" & i).Value
        If xRgVal = "Print" Or xRgVal = "print" Then
            If xCSheet.Range("A" & i).Value <> "" Then
                ActiveWorkbook.Worksheets(xCSheet.Range("A" & i).Value).PrintOut
            End If
        End If
    Next
    xCSheet.Delete
    ActiveWorkbook.Worksheets.Add
    ActiveSheet.Name = "Control Sheet"
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "Sheet Name"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Print?"
    For i = 1 To ActiveWorkbook.Worksheets.Count
        Range("A" & i + 1).Value = ActiveWorkbook.Worksheets(i).Name
    Next
    Cells.Columns.AutoFit
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

A screenshot of VBA code inserted in the Module window

Nachdem Sie den Code ausgeführt haben, wird/die Blätter sofort gedruckt, und gleichzeitig wird ein neues Kontrollblatt das alte ersetzen.

Tipp: Wenn Sie Kutools für Excel haben, können Sie mit dem Hilfsprogramm Verknüpfungstabelle erstellen schnell eine Liste aller Blattnamen in einem neuen Blatt mit einem anklickbaren Link erstellen.

A screenshot of a Control Sheet with clickable links to sheet names after using Kutools

Kutools für Excel - Verleihen Sie Excel mit über 300 essenziellen Tools einen echten Schub. Nutzen Sie dauerhaft kostenlose KI-Funktionen! Holen Sie es sich jetzt

Beste Büroproduktivitätswerkzeuge

🤖 Kutools AI-Assistent: Revolutionieren Sie die Datenanalyse basierend auf: Intelligente Ausführung   |  Code generieren  |  Benutzerdefinierte Formeln erstellen  |  Daten analysieren und Diagramme generieren  |  Erweiterte Funktionen aufrufen
Beliebte Funktionen: Finden, Hervorheben oder Doppelte markieren   |  Leere Zeilen löschen   |  Spalten oder Zellen kombinieren ohne Datenverlust   |   Runden ...
Erweiterte SVERWEIS: Mehrfachkriterien SVERWEIS    Mehrfachwert SVERWEIS  |   Mehrblatt-SVERWEIS   |   Fuzzy Match ....
Erweiterte Dropdown-Liste: Schnell Dropdown-Liste erstellen   |  Abhängige Dropdown-Liste   |  Mehrfachauswahl Dropdown-Liste ....
Spaltenmanager: Eine bestimmte Anzahl von Spalten hinzufügen  |  Spalten verschieben  |  Sichtbarkeitsstatus ausgeblendeter Spalten umschalten  |  Bereiche & Spalten vergleichen ...
Hervorgehobene Funktionen: Gitterfokus   |  Entwurfsansicht   |   Erweiterte Formelleiste    Arbeitsmappe & Arbeitsblatt-Manager   |  AutoText-Bibliothek (Auto Text)   |  Datumsauswahl   |  Daten zusammenführen   |  Zellen verschlüsseln/entschlüsseln    E-Mail senden nach Liste   |  Spezialfilter   |   Spezialfilter (Filtern fett/kursiv/durchgestrichen...) ...
Top15 Werkzeugsets12 Textwerkzeuge (Text hinzufügen, Bestimmte Zeichen löschen, ...)   |   50+ Diagramm typen (Gantt-Diagramm, ...)   |   40+ Praktische Formeln (Alter basierend auf dem Geburtsdatum berechnen, ...)   |   19 Einfügewerkzeuge (QR-Code einfügen, Bild aus Pfad einfügen, ...)   |   12 Konvertierungswerkzeuge (In Wörter umwandeln, Währungsumrechnung, ...)   |   7 Konsolidieren & Aufteilen Werkzeuge (Erweiterte Zeilen zusammenführen, Zellen aufteilen, ...)   |   ... und mehr

Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis.  Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...


Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher

  • Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
  • Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!