Wie kann ich eine Userform mit VBA vollständig ausdrucken?

Wie kann ich sicherstellen, dass eine Userform in voller Größe mit VBA gedruckt wird?

Uhr
In der Welt von Microsoft Excel und VBA lassen sich viele Aufgaben automatisieren. Besonders häufig werden Userforms eingesetzt. Doch was tun, wenn man eine Userform in voller Größe drucken möchte? Eine simple Frage freilich ist der Weg dorthin oft mit Schwierigkeiten gepflastert. Der Befehl "PrintForm" druckt standardmäßig nur den sichtbaren Bereich einer Userform. Die Lösung? Ein angepasstes VBA-Skript, das alle Inhalte erfasst.

Um die Userform vollflächig auszudrucken gibt es einige wichtige Schritte zu berücksichtigen. Zunächst einmal – das Thema der ScrollBar-Eigenschaften. Hier muss man die ScrollTop-Eigenschaft auf 0 setzen. Das sorgt dafür: Dass der gesamte Inhalt sichtbar wird. Die ScrollBars-Eigenschaft hingegen sollte auf "fmScrollBarsNone" eingestellt werden. Nur so wird sichergestellt – dass keine unerwünschten Scrollleisten angezeigt werden.

Jetzt wird es technisch – man muss die ursprünglichen Dimensionen der Userform abspeichern. Dazu nutzt man ganz einfach die Height- und Width-Eigenschaften. Diese Einstellungen sind entscheidend. Wer dies versäumt, riskiert, dass die Userform nach dem Drucken nicht weiterhin in der gewohnten Größe erscheint. Ein Beispiel sieht dann so aus:

```vba
Me.ScrollTop = 0
Me.ScrollBars = fmScrollBarsNone
frmHeight = Me.Height
frmWidth = Me.Width
```

Im nächsten Schritt folgt die Anpassung der Höhe und Breite. Dies geschieht temporär und ermöglicht: Dass beim Drucken nichts verloren geht. Man könnte beispielsweise die Größe auf 900 x 600 Pixel setzen. Diese Maße sind nur exemplarisch und können je nach Inhalten variieren.

```vba
Me.Height = 900
Me.Width = 600
```

Nun folgt der entscheidende Befehl "PrintForm". Ein einfacher Befehl – doch er hat große Wirkung. Er sorgt dafür, dass die print-ready Version der Userform erstellt wird.

```vba
Me.PrintForm
```

Nach dem Druck sollte jedoch nicht das Chaos folgen. Eine äußerst bedeutende jedoch oft übersehene Aufgabe ist die Wiederherstellung der ursprünglichen Dimensionen. Man setzt die ScrollBars-Eigenschaft wieder auf die Standard-Einstellung "fmScrollBarsVertical" zurück und die Höhe und ebenfalls die Breite der Userform werden auf die vorher gespeicherten Werte gesetzt.

```vba
Me.ScrollBars = fmScrollBarsVertical
Me.Height = frmHeight
Me.Width = frmWidth
```

Abschließend sei gesagt – diese Schritte garantieren, dass eine Userform in voller Größe gedruckt wird. Jedoch gibt es einen Vorbehalt: Die Druckqualität hängt stark von den Druckereinstellungen ab. Oft können niedrigere Qualitätsstufen oder verschiedene Papierformate dazu führen, dass Inhalte skaliert oder sogar beschnitten werden. Ein weiterer Aspekt – die Vorbereitung ist alles. So stellt man sicher – dass das Endergebnis den Erwartungen gerecht wird.

Diese Anleitung bietet eine solide Grundlage um erfolgreich eine Userform mit VBA zu drucken. Nutzen Sie diese Anweisungen als Sprungbrett für eigene Anpassungen und Optimierungen. Das Resultat kann sich sehen lassen!






Anzeige