Drucken ist ein wichtiger und wesentlicher Bestandteil der Arbeit mit Tabellen in Excel. Mithilfe von VBA (Visual Basic for Applications) können Sie viele Prozesse automatisieren, einschließlich des Druckens von Dokumenten. In diesem Artikel werden wir uns die grundlegenden Aspekte des Druckens in Excel mit VBA ansehen und Ihnen eine umfassende Anleitung zur Anwendung geben.
Bei der Arbeit mit Excel-Tabellen treten Situationen auf, in denen Sie Berichte erstellen oder eine große Anzahl von Dokumenten mit festgelegten Parametern drucken müssen. In solchen Fällen kann die Verwendung von VBA diesen Prozess automatisieren und Zeit sparen.
Mit VBA können Sie verschiedene Druckoptionen wie Seitengröße, Ausrichtung, Ränder ändern und der gedruckten Seite Titel und Fußzeilen hinzufügen. Darüber hinaus können Sie mit VBA den Druckvorgang steuern, z. B. nur bestimmte Blätter drucken oder einen bestimmten Bereich von zu druckenden Zellen festlegen.
In diesem Handbuch werden wir uns die grundlegenden Methoden und Eigenschaften ansehen, mit denen Sie mit dem Drucken in Excel VBA arbeiten können. Wir werden uns ansehen, wie Sie die Druckoptionen anpassen, einer Seite Titel und Fußzeilen hinzufügen, die zu druckenden Blätter auswählen und den Druckprozess mit VBA verwalten. Wenn Sie diese Funktionen nutzen, können Sie Ihre Arbeit mit Tabellen in Excel erheblich vereinfachen und die Erstellung von Berichten und Dokumenten beschleunigen.
Erste Schritte mit dem Drucken in Excel VBA
Um mit dem Drucken in Excel VBA zu beginnen, müssen Sie den Datenbereich definieren, den Sie drucken möchten. Dies kann ein ausgewählter Zellbereich oder ein ganzes Blatt sein. Sie können dann verschiedene Druckoptionen wie Skalierung, Seitenausrichtung, Überschriften und vieles mehr anpassen.
Definieren des zu druckenden Bereichs
Um den zu druckenden Datenbereich zu definieren, können Sie die Range- und Select-Methoden verwenden. Der folgende Code hebt beispielsweise einen Bereich von Zelle A1 bis Zelle C5 hervor:
Sie können auch Variablen verwenden, um den Datenbereich zu definieren. Der folgende Code hebt beispielsweise den Bereich hervor, der die Daten in der ersten Spalte und den ersten 10 Zeilen enthält:
Dim rng As Range Set rng = Range("A1").Resize(10, 1) rng.Select
Anpassen der Druckeinstellungen
Nachdem Sie den Datenbereich definiert haben, können Sie die Druckeinstellungen mithilfe der Eigenschaften des PageSetup-Objekts anpassen. Der folgende Code setzt beispielsweise den Druckmaßstab auf 100%:
Sie können auch die Seitenausrichtung festlegen, Kopfzeilen und Fußzeilen festlegen und vieles mehr:
With ActiveSheet.PageSetup .Orientation = xlLandscape .LeftHeader = "Kopfzeile" .CenterFooter = "Fußzeile" End With
Nachdem Sie die Druckeinstellungen konfiguriert haben, können Sie die PrintOut-Methode verwenden, um den Datenbereich zu drucken:
In Excel VBA können Sie auch den Druckassistenten ausführen, mit dem Sie erweiterte Druckoptionen konfigurieren können. Der folgende Code führt beispielsweise den Druckassistenten für das aktuelle Blatt aus:
Zum Schluß. Drucken in Excel VBA bietet umfangreiche Möglichkeiten zum Erstellen professioneller Berichte und Dokumente. Sie können einen Datenbereich definieren, die Druckeinstellungen anpassen und den Druckassistenten verwenden, um perfekt formatierte Dokumente zu erstellen. Viel Glück beim Drucken in Excel VBA!
So konfigurieren Sie die Druckoptionen in Excel VBA
In Excel VBA können Sie verschiedene Druckoptionen anpassen, um das gewünschte Ergebnis zu erzielen.
1. Festlegen des Druckbereichs:
Mit der Eigenschaft "PrintArea" des Arbeitsblattobjekts können Sie angeben, welcher Bereich des Arbeitsblattes gedruckt werden soll. Um beispielsweise anzugeben, dass nur die erste Spalte und die ersten fünf Zeilen gedruckt werden sollen, können Sie den folgenden Code verwenden:
2. Festlegen des Maßstabs:
Sie können den Druckmaßstab festlegen, um die Größe der zu druckenden Daten zu ändern. Wenn Sie beispielsweise den Maßstab auf 80% festlegen möchten, können Sie den folgenden Code verwenden:
3. Festlegen der Ausrichtung:
Sie können die Ausrichtung der Druckseite festlegen, um die horizontale oder vertikale Position der Daten auf der Seite auszuwählen. Um beispielsweise die horizontale Ausrichtung festzulegen, können Sie den folgenden Code verwenden:
4. Festlegen von Feldern:
Sie können die Randgrößen der Druckseite festlegen, um die Einrückung zwischen den Daten und den Seitenrändern festzulegen. Wenn Sie beispielsweise das Feld oben auf 1 cm festlegen möchten, können Sie den folgenden Code verwenden:
5. Die Aufgabe der Kappe und des Kellers:
Sie können den Text für den Seitenkopf und den Seitenkopf festlegen, um Informationen hinzuzufügen, die beim Drucken auf jeder Seite angezeigt werden. Sie können beispielsweise den folgenden Code verwenden, um anzugeben, dass der Dokumenttitel in der Kopfzeile der Seite angezeigt werden soll:
ActiveSheet.PageSetup.CenterHeader = "Dokumentname"
Dies sind nur einige der möglichen Einstellungen für die Druckoptionen in Excel VBA. Mit diesen und anderen Methoden können Sie den Druck nach Bedarf anpassen und das gewünschte Ergebnis erzielen.
Arbeiten mit Druckbereichen in Excel VBA
Excel VBA bietet die Möglichkeit, genau zu bestimmen, welche Daten gedruckt werden sollen und auf welchem Teil der Seite sie platziert werden sollen. Dies geschieht durch Arbeiten mit Druckbereichen.
Ein Druckbereich ist ein rechteckiger Bereich auf der Seite, in den Daten aus einer Excel-Tabelle eingefügt werden. Ein einzelnes Excel-Arbeitsblatt kann mehrere Druckbereiche enthalten, von denen jeder seine eigenen Daten enthalten kann.
Excel VBA verwendet ein PrintArea-Objekt, um mit Druckbereichen zu arbeiten. Mit diesem Objekt können Sie festlegen, welcher Bereich des Papiers mit dem Druckbefehl gedruckt wird.
Sie können einen Druckbereich wie folgt erstellen:
Sub SetPrintArea()Dim ws As WorksheetDim printArea As RangeSet ws = ThisWorkbook.Worksheets("Sheet1")Set printArea = ws.Range("A1:D10")ws.PageSetup.PrintArea = printArea.AddressEnd Sub
Im obigen Code definieren wir den Druckbereich, der mit Zelle A1 beginnt und mit Zelle D10 auf Blatt "Sheet1" endet. Dann weisen wir diesen Druckbereich der PrintArea-Eigenschaft des PageSetup-Objekts zu. Jetzt wird beim Drucken nur dieser Teil der Seite gedruckt.
Wenn Sie einen weiteren Druckabschnitt auf demselben Blatt hinzufügen möchten, können wir die Add-Methode des PrintAreas-Objekts verwenden. Zum Beispiel:
Sub AddPrintArea()Dim ws As WorksheetDim printArea1 As RangeDim printArea2 As RangeSet ws = ThisWorkbook.Worksheets("Sheet1")Set printArea1 = ws.Range("A1:D10")Set printArea2 = ws.Range("E1:H10")ws.PageSetup.PrintArea = printArea1.Addressws.PageSetup.PrintAreas.Add printArea2.AddressEnd Sub
In diesem Beispiel erstellen wir zwei Druckbereiche, printArea1 und printArea2, und fügen beide dem Blatt "Sheet1" hinzu. Der erste Druckabschnitt von printArea1 beginnt mit Zelle A1 und endet mit Zelle D10, der zweite Druckabschnitt von printArea2 mit Zelle E1 und endet mit Zelle H10. Beim Drucken werden nun beide Seitenbereiche gedruckt.
Sie können einen Druckbereich mit der Delete-Methode des PrintAreas-Objekts löschen :
Sub DeletePrintArea()Dim ws As WorksheetSet ws = ThisWorkbook.Worksheets("Sheet1")ws.PageSetup.PrintAreas.DeleteEnd Sub
In diesem Beispiel werden alle Druckbereiche auf Blatt "Sheet1" gelöscht.
Wenn Sie mit Druckbereichen in Excel VBA arbeiten, können Sie die Position von Daten auf einer Seite beim Drucken flexibel steuern. Sie können mehrere Druckbereiche definieren, verschiedene Bereiche auf dem Blatt festlegen und für jeden Bereich andere Druckoptionen festlegen.
Verwenden von benutzerdefinierten Drucklayouts in Excel VBA
In Excel VBA können Sie benutzerdefinierte Drucklayouts verwenden, um professionell aussehende Dokumente zu erstellen. Mit einem benutzerdefinierten Drucklayout können Sie Druckoptionen wie Papierformat, Ausrichtung, Seitenränder und Schriftarten definieren.
Führen Sie die folgenden Schritte aus, um ein benutzerdefiniertes Drucklayout zu verwenden:
1. Erstellen eines benutzerdefinierten Drucklayouts:
- Öffnen Sie das Excel-Dokument, das Sie drucken möchten.
- Klicken Sie oben auf dem Bildschirm auf die Registerkarte Seitenlayout.
- Passen Sie die Druckeinstellungen an, z. B. das Papierformat, die Ausrichtung und die Seitenränder.
- Wählen Sie auf der Registerkarte "Kappe und Fußzeile" bei Bedarf Schriftarten und Erscheinungsbilder aus.
- Speichern Sie das Drucklayout, indem Sie im Menü Datei die Option Speichern auswählen.
2. Laden eines benutzerdefinierten Drucklayouts in Excel VBA:
- Öffnen Sie den Visual Basic-Editor, indem Sie eine Tastenkombination drücken ALT + F11.
- Fügen Sie den folgenden Code in das VBA-Modul ein:
Sub LoadCustomPrintLayout()Dim ws As WorksheetDim pl As PageLayoutDim plName As String' Укажите имя пользовательского макета печатиplName = "MyCustomLayout"' Открываем активный листSet ws = ActiveSheet' Создаем новый макет печатиSet pl = ws.PageSetup.PageLayouts.Add(plName)' Применяем макет печати к активному листуws.PageSetup.PageLayout = plEnd Sub
Nachdem Sie ein benutzerdefiniertes Drucklayout in Excel VBA hochgeladen haben, können Sie es zum Drucken von Dokumenten verwenden. Sie können beispielsweise den folgenden Code verwenden, um das aktive Blatt zu drucken:
Sub PrintActiveSheet()ActiveSheet.PrintOutEnd Sub
Das Druckergebnis entspricht Ihrem benutzerdefinierten Drucklayout, das Sie zuvor erstellt haben.
Mit benutzerdefinierten Drucklayouts in Excel VBA können Sie qualitativ hochwertige und professionell aussehende Dokumente erstellen. Es ist ein nützliches Werkzeug, um Druckoptionen zu verwalten und das Erscheinungsbild Ihrer Berichte und Dokumente zu verbessern.
Drucken von Diagrammen und Diagrammen in Excel VBA
Excel VBA bietet leistungsstarke Funktionen zum Erstellen und Anpassen von Diagrammen und Diagrammen. Wenn Sie mit großen Datenmengen arbeiten, kann das Drucken dieser Diagramme eine wichtige Aufgabe sein. In diesem Abschnitt erfahren Sie, wie Sie Diagramme und Diagramme mit Excel VBA drucken.
Zuerst müssen wir das Objekt des Diagramms definieren, das wir drucken möchten. In Excel VBA können wir auf Diagramme und Diagramme nach Index oder Name zugreifen. Um beispielsweise auf die erste Grafik in einem Arbeitsblatt zu verweisen, können wir den folgenden Code verwenden:
Dim chart As ChartSet chart = ActiveSheet.ChartObjects(1).Chart
Jetzt haben wir ein Grafikobjekt und können es vor dem Drucken einrichten. Zum Beispiel können wir einen Titel für ein Diagramm mit der Eigenschaft Chart festlegen.Title.Text:
chart.HasTitle = Truechart.ChartTitle.Text = "Мой график"
Wir können auch andere Attribute des Diagramms anpassen, z. B. den Achsenmaßstab, die Legende, die Achsenbeschriftungen und vieles mehr. Eine vollständige Liste der verfügbaren Diagrammeigenschaften und -methoden finden Sie in der offiziellen Excel VBA-Dokumentation.
Nachdem wir den Zeitplan eingerichtet haben, können wir ihn drucken. Dazu können wir die Chart-Methode verwenden.PrintOut. Um beispielsweise ein Diagramm auf dem aktuellen Drucker zu drucken, können wir den folgenden Code verwenden:
chart.PrintOut
Sie können auch andere Parameter der PrintOut-Methode verwenden, z. B. die Anzahl der Kopien und das Seitenintervall, um den Druck an Ihre Anforderungen anzupassen.
Wenn Sie mehrere Diagramme auf einem Arbeitsblatt haben und alle Diagramme drucken möchten, können Sie die For Each-Schleife verwenden, um alle Diagramme zu durchlaufen und jedes Diagramm zu drucken. Zum Beispiel:
Dim chartObject As ChartObjectFor Each chartObject In ActiveSheet.ChartObjectschartObject.Chart.PrintOutNext chartObject
In diesem Zyklus durchlaufen wir alle Diagrammobjekte auf dem aktiven Arbeitsblatt und drucken jedes davon aus.
Abschließend ist das Drucken von Diagrammen und Diagrammen in Excel VBA ziemlich einfach. Definieren Sie ein Diagrammobjekt, konfigurieren Sie es, und rufen Sie die PrintOut-Methode zum Drucken auf. Verwenden Sie die verfügbaren Eigenschaften und Methoden, um den Druck an Ihre Anforderungen anzupassen.
Fortgeschrittene Drucktechniken in Excel VBA
Excel VBA bietet viele Funktionen und Methoden zur Druckverwaltung, mit denen Sie erweiterte Drucklayouts erstellen und das Drucken in Excel automatisieren können.
Eine der nützlichsten Techniken ist das Ändern des Druckmaßstabs. Sie können die Zoom-Methode verwenden, um den gewünschten Druckmaßstab einzustellen, bevor Sie das Dokument drucken. Der folgende Code setzt beispielsweise den Druckmaßstab auf 80%:
ActiveSheet.PrintOut Zoom:=80
Sie können auch die FitToPagesWide-Methode verwenden, um den Druck automatisch auf eine bestimmte Anzahl von Seiten in der Breite zu skalieren. Der folgende Code skaliert beispielsweise den Druck um eine Seite in der Breite:
ActiveSheet.PageSetup.FitToPagesWide = 1
Wenn Sie mehrere Arbeitsblätter in einer Excel-Arbeitsmappe haben, können Sie auswählen, welche Arbeitsblätter mit der PrintArea-Eigenschaft gedruckt werden sollen. Der folgende Code druckt beispielsweise nur die Blätter 1 und 2 aus:
ActiveSheet.PrintOut PrintArea:="Sheet1, Sheet2"
Alternativ können Sie die Druckausrichtung (horizontal oder vertikal) mit der Orientation-Eigenschaft anpassen. Der folgende Code legt beispielsweise die horizontale Ausrichtung des Druckers fest:
ActiveSheet.PageSetup.Orientation = xlLandscape
Wenn Sie spezielle Druckoptionen wie Zoom, Ausrichtung oder Papierformat angeben müssen, können Sie die Eigenschaften Zoom , Orientation und PaperSize entsprechend verwenden. Der folgende Code legt beispielsweise den Druckmaßstab auf 100%, die Hochformat-Ausrichtung und das Papierformat auf "Letter" fest:
With ActiveSheet.PageSetup.Zoom = 100.Orientation = xlPortrait.PaperSize = xlPaperLetterEnd With
Dies sind nur einige der Funktionen, die Excel VBA für den erweiterten Druck bietet. Verwenden Sie diese Techniken, um flexiblere und anpassbarere Drucklayouts in Excel zu erstellen.