Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: UserForm drucken

UserForm drucken
Bernhard
Hallo Forum,
Ich habe folgendes Problem:
Ich bin kein großer VBA-Checker, aber irgendwie habe ich es doch geschafft ein Berechnungstool in Excel mit vielen vielen Makros zu erstellen. STOLZ!!! Zugegbenermassen habe ich viele Teile meiner Codes im Internet gesucht, gefunden, kopiert und für meinen Bedarf angepasst. Auf gut deutsch: Ich beherrsche die Programmiersprache nicht unbedingt gut.
So, jetzt mein Problem:
Ich habe eine UserForm erstellt. In dieser UserForm befindet sich als Hintergrundbild ein Schaltbild eines Heizkraftwerks. An bestimmten, signifikanten Stellen des Kraftwerksaufbaus habe ich TextBoxes eingefügt, die berechnete Werte aus verschiedenen Tabellenblättern wiedergeben. Funktioniert soweit tadellos. Das Hintergrundbild der UserForm ist sehr groß, so dass ich eine Scrollbar einfügen musste. Die Berechnungsergebnisse sollen dann im Anhang einer Studienarbeit hinterlegt werde, sprich, ausgedruckt. Dazu habe ich bereits einen CommandButton angelegt, mit dem der Druckvorgang gestartet wird.
FRAGE:
Wie kann ich das UserForm ausdrucken?
Zu dem Problem habe ich bereits 2 (suboptimale) Lösungen gefunden:
1. Im ersten Fall war zwar der Gesamte Inhalt des UserForms auf Papier, aber völlig verschoben und verzerrt.
2. Im zweiten Fall wurde nur der Teil gedruckt, der zum Zeitpunkt des Druck-Cmd-Buttons-betätigens auf dem Bildschirm sichtbar war.
Beide Lösungen sind also Mist. Wer kann mir helfen das Problem zu lösen?
Schöne Grüße,
Bernhard
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: UserForm drucken
08.07.2010 12:48:57
Beverly
Hi Bernhard,
hast du es schon mal versucht mit Me.PrintForm?


AW: UserForm drucken
08.07.2010 13:35:09
Bernhard
Hey Karin,
hast du es schon mal versucht mit Me.PrintForm?
Ja, damit hab ichs eben probiert. Hier tritt Fall 2 in Kraft, also nur der im Moment des Druckens am Monitor sichtbare Teil wird gedruckt. Danke.
Gibts noch weitere Möglichkeiten?
MFG Bernhard
Anzeige
vor Druck Größe anpassen
11.07.2010 12:19:32
Tino
Hallo,
vielleicht hilft es ja, die Userform vor dem ausdrucken an die benötigte Größe anzupassen.
Beispiel:
Private Sub CommandButton1_Click()
Dim sngHeight As Single, sngWidth As Single
'aktuelle Größe in Variablen merken
sngHeight = Me.Height
sngWidth = Me.Width
'eventuell an Deine benötigte Größe anpassen
Me.Height = 360
Me.Width = 275
Me.PrintForm 'UF ausdrucken
'Form- Größe wieder zurücksetllen
Me.Height = sngHeight
Me.Width = sngWidth
End Sub
Gruß Tino
Anzeige
AW: vor Druck Größe anpassen
12.07.2010 13:10:11
Bernhard
Hey Tino,
Danke, dein Tip war "fast" perfekt. Habe deinen Code noch leicht verändert, dann hats gepasst.
Private Sub CommandButton1_Click()
Dim sngHeight As Single, sngWidth As Single
'aktuelle Größe in Variablen merken
sngHeight = Me.Height
sngWidth = Me.Width
'eventuell an Deine benötigte Größe anpassen
Me.Height = 360
Me.Width = 275
Zoom = 85
Me.PrintForm 'UF ausdrucken
'Form- Größe wieder zurücksetllen
Me.Height = sngHeight
Me.Width = sngWidth
Zoom = 100
End Sub

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

UserForm in Excel drucken: Tipps und Tricks


Schritt-für-Schritt-Anleitung

  1. UserForm erstellen: Beginne mit der Erstellung Deiner UserForm in Excel, indem Du die benötigten Steuerelemente, wie TextBoxes und CommandButtons, hinzufügst.

  2. Druck-Button hinzufügen: Füge einen CommandButton hinzu, der den Druckvorgang auslösen soll.

  3. VBA-Code für den Druck: Verwende den folgenden VBA-Code, um das UserForm zu drucken:

    Private Sub CommandButton1_Click()
       Dim sngHeight As Single, sngWidth As Single
       ' aktuelle Größe in Variablen merken
       sngHeight = Me.Height
       sngWidth = Me.Width
       ' eventuell an Deine benötigte Größe anpassen
       Me.Height = 360
       Me.Width = 275
       Me.PrintForm ' UserForm ausdrucken
       ' Form-Größe wieder zurückstellen
       Me.Height = sngHeight
       Me.Width = sngWidth
    End Sub
  4. Größe anpassen: Stelle sicher, dass Du die Größe der UserForm anpasst, bevor Du druckst, um ein optimales Ergebnis zu erzielen.

  5. Drucken mit Vorschau: Wenn Du eine Druckvorschau benötigst, kannst Du die PrintPreview-Methode verwenden, um zu sehen, wie die UserForm aussehen wird.


Häufige Fehler und Lösungen

  • Inhalt wird verschoben oder verzerrt: Wenn der gesamte Inhalt des UserForms verschoben oder verzerrt wird, überprüfe die Größe und das Layout der UserForm, bevor Du druckst.

  • Nur sichtbarer Teil wird gedruckt: Wenn nur der sichtbare Teil des UserForms gedruckt wird, stelle sicher, dass Du die Größe der UserForm anpasst, bevor Du den Druck auslöst.


Alternative Methoden

Eine alternative Methode, um die UserForm zu drucken, ist die Verwendung von Me.PrintForm, aber dies kann ebenfalls dazu führen, dass nur der sichtbare Teil gedruckt wird. Eine Möglichkeit, dies zu umgehen, ist die Verwendung von Screenshots, um das gesamte UserForm zu erfassen und dann auszudrucken.


Praktische Beispiele

Hier ist ein Beispiel, wie Du die UserForm drucken kannst, während Du die Größe anpasst:

Private Sub CommandButton1_Click()
    Dim sngHeight As Single, sngWidth As Single
    ' aktuelle Größe in Variablen merken
    sngHeight = Me.Height
    sngWidth = Me.Width
    ' Größe anpassen
    Me.Height = 360
    Me.Width = 275
    Me.PrintForm ' UserForm drucken
    ' Größe zurückstellen
    Me.Height = sngHeight
    Me.Width = sngWidth
End Sub

Nach dem Drucken kannst Du die Zoom-Einstellungen anpassen, um die Druckqualität zu verbessern.


Tipps für Profis

  • Druckvorschau verwenden: Nutze die Druckvorschau, um sicherzustellen, dass alles korrekt aussieht, bevor Du druckst.

  • Benutzerdefinierte Druckeinstellungen: Überlege, benutzerdefinierte Druckeinstellungen in Deinem VBA-Skript zu implementieren, um den Druckprozess weiter zu optimieren.

  • Fehlerprotokollierung: Implementiere eine Fehlerprotokollierung, um Probleme während des Druckvorgangs nachzuvollziehen.


FAQ: Häufige Fragen

1. Wie kann ich die UserForm drucken, ohne dass der Inhalt verzerrt wird?
Achte darauf, die Größe der UserForm vor dem Drucken anzupassen und prüfe, ob die Layout-Einstellungen korrekt sind.

2. Gibt es eine Möglichkeit, eine Druckvorschau für die UserForm anzuzeigen?
Ja, Du kannst die PrintPreview-Methode verwenden, um eine Vorschau des Drucks anzuzeigen, bevor Du tatsächlich druckst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige