Immer wieder das leideige Thema: Wie drucke ich den Inhalt einer RTF-TextBox sauber aus oder wie lässt sich eine Druckvorschau realsiieren? Sofern auf dem System Microsoft Word installiert ist, lässt sich das Ganze bequem durch Fernsteuerung von WinWord erledigen. Beispiel: Private Sub cmdPreview_Click() Dim oWord As Object ' Word.Application ' Text der RichTextBox in die Zwischenablage kopieren Clipboard.Clear Clipboard.SetText RichTextBox1.TextRTF, vbCFRTF ' neue WinWord-Instanz erstellen On Error GoTo ErrHandler Set oWord = CreateObject("Word.Application") With oWord.Application .Visible = True ' neues Dokument hinzufügen .Documents.Add ' Inhalt der Zwischenablage einfügen .Selection.Paste ' Ausdruck in Seitenvorschau .ActiveDocument.PrintPreview End With ' Zwischenablage löschen Clipboard.Clear On Error GoTo 0 Exit Sub ErrHandler: MsgBox "Fehler beim Versuch das Dokument in der " & _ "WinWord-Seitenvorschau anzuzeigen!" & vbCrLf & _ CStr(Err.Number) & " " & Err.Description, vbExclamation + vbOKOnly Clipboard.Clear Set oWord = Nothing End Sub Erweiterung: Private Sub cmdPreview_Click() Dim oWord As Object ' Word.Application ' Text der RichTextBox in die Zwischenablage kopieren Clipboard.Clear Clipboard.SetText RichTextBox1.TextRTF, vbCFRTF ' neue WinWord-Instanz erstellen On Error GoTo ErrHandler Set oWord = CreateObject("Word.Application") With oWord.Application .Visible = True ' neues Dokument hinzufügen .Documents.Add ' Inhalt der Zwischenablage einfügen .Selection.Paste ' Ansicht einstellen .ActiveWindow.ActivePane.View.Type = 3 ' wdPrintView ' Kopfzeile aktivieren .ActiveWindow.ActivePane.View.SeekView = 9 ' wdSeekCurrentPageHeader ' Seitennumerierung rechtsbündig eintragen With .Selection .ParagraphFormat.Alignment = 2 ' wdAlignParagraphRight .TypeText "Seite " .Fields.Add .Range, 33 ' wdFieldPage End With ' Kopfzeile wieder verlassen .ActiveWindow.ActivePane.View.SeekView = 0 ' wdSeekMainDocument ' Ausdruck in Seitenvorschau .ActiveDocument.PrintPreview End With ' Zwischenablage löschen Clipboard.Clear On Error GoTo 0 Exit Sub ErrHandler: MsgBox "Fehler beim Versuch das Dokument in der " & _ "WinWord-Seitenvorschau anzuzeigen!" & vbCrLf & _ CStr(Err.Number) & " " & Err.Description, vbExclamation + vbOKOnly Clipboard.Clear Set oWord = Nothing End Sub Drucken ohne Seitenvorschau: ... With oWord.Application ... ' Dokument ausdrucken .ActiveDocument.PrintOut ' Dokument schließen .ActiveDocument.Close 0 ' wdDoNotSaveChanges ' Word beenden .Quit 0 ' wdDoNotSaveChanges End With DoEvents Set oWord = Nothing ... Dieser Tipp wurde bereits 12.479 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats ![]() Matthias Kozlowski Umlaute konvertieren Ersetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Neu! sevDTA 3.0 Pro ![]() SEPA mit Kontonummernprüfung Erstellen von SEPA-Dateien mit integriertem BIC-Verzeichnis und Konto- nummern-Prüfverfahren, so dass ungültige Bankdaten bereits im Vorfeld ermittelt werden können. |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |