|  |  | 
Suche Visual-Basic Code| Rechtsbündige Zahlenausgabe -VB6 |  |  |  |  | Autor: ingu |  | Datum: 03.03.07 18:32 |  | 
 |  | Es sieht unschön aus, wenn in einer mehrzeiligen Ausgabe die Kommata nicht exakt untereinanderstehen. Das nachfolgende Beispiel zeigt, wie eine rechtsbündige Zahlenausgabe sowohl bei proportialen als auch bei nichtproportialen Schriften unter Anwendung von zwei Funktionen realisiert werden kann.
 Um dieses Beispiel auszuprobieren, fügen Sie den Code in den Deklarationsabschnitt eines Formulars mit den folgenden Steuerelementen ein: ein Befehlsschaltfläche-Steuerelement (CommandButton), zwei Textfelder Text1 und Text2 und ein Standarddialog-Steuerelement (CommonDialog).
 In den Deklariationsabschnitt eines Moduls (Module1.bas) kopieren Sie die beiden Funktionen RBT und RBC. (RBT steht symbolisch für „Rechtsbündig Times New Roman“ und RBC für „Rechtsbündig Courier New"
 
 Module1.bas[u]
 Option Explicit
 Dim text
 Function RBT(ZVT As Variant, Zahlenbreite As Integer) As String
 RBT = String(Zahlenbreite + (Zahlenbreite - Len((ZVT)) - 1), "@")
 End Function
 Function RBC(PVC As Variant, Zahlenbreite As Integer) As String
 text = "          "    '9 Leerzeichen[color=black]
 RBC = String(Zahlenbreite + (Zahlenbreite - Len(text) - 1), "@")
 End Function
 [color=green]
 'Len(text) ist immer '9' (in diesem Beispiel)
 'Bei "längeren" Zahlen muss bei der Funktion RBC der text erhöht werden (z. B. auf 12)
 'Unter „Drucken muss dann stehen:
 'Format(ZFZahla, RBT(ZFZahla, 12))
 'Format(ZFZahla, RBT(ZFZahlb, 12))
 'Format(ZFZahla, RBC(ZFZahla, 12))
 'Format(ZFZahla, RBC(ZFZahlb, 12))
 [color=black]
 
 Formular[u]
 Option Explicit
 Dim P, ZFZahla, ZFZahlb
 Private Sub Form_Load()
 'Zahlen für Testausdruck
 Text1 = 1234.54321
 Text2 = 5.34
 End Sub
 
 Private Sub Druckdaten()[color=green]
 'Umwandlung Zahl in String
 'CStr-Funktion (Beispiel)
 'In diesem Beispiel wird die CStr-Funktion verwendet, um
 'einen numerischen Wert in den Typ String umzuwandeln.
 'TestDouble = 437.324          TestDouble hat den Typ Double.
 'TestString = CStr(TestDouble) TestString enthält "437,324".
 [color=black]
 ZFZahla = CStr(Format(Text1, "0.00")): ZFZahlb = CStr(Format(Text2, "0.00"))
 [color=green]
 'Text1 und Text2 dienen hier nur als Beispiel. Für den rechtsbündigen Ausdruck
 werden gleiche Formate vorausgesetz (Anzahl der Nachkommastellen).
 'Für Text1 und Text2 könnten auch Ergebnisse mathematischer Operationen stehen.
 'Zahla = c * d
 'Zahlb = cdbl(e) + cdbl(f)[color=black]
 End Sub
 
 Private Sub Command1_Click()
 Druckdaten
 Set P = Printer
 Dim BeginPage, EndPage, NumCopies, Orientation, i, a, b
 cdlDateiDrucken.CancelError = True
 On Error GoTo ErrHandler
 NumCopies = cdlDateiDrucken.Copies
 cdlDateiDrucken.ShowPrinter
 BeginPage = cdlDateiDrucken.FromPage
 EndPage = cdlDateiDrucken.ToPage
 Orientation = cdlDateiDrucken.Orientation
 '-----------------------------------------
 P.Orientation = vbPRORPortrait  'Hochformat[color=black]
 P.FontName = "Times New Roman"  'Schriftart[color=black]
 P.FontSize = 8                  'Schriftgrad[color=black]
 P.CurrentY = 1800: P.CurrentX = 3000: P.Print "Rechtbündige Zahlenausausgabe - Times New Roman"
 P.CurrentY = 2000: P.CurrentX = 3000: P.Print Format(ZFZahla, RBT(ZFZahla, 9))
 P.CurrentY = 2200: P.CurrentX = 3000: P.Print Format(ZFZahlb, RBT(ZFZahlb, 9))
 P.CurrentY = 2400: P.CurrentX = 3000: P.Print "Zahlenausausgabe - Times New Roman – ohne Funktion"
 P.CurrentY = 2600: P.CurrentX = 3000: P.Print Text1
 P.CurrentY = 2800: P.CurrentX = 3000: P.Print Text2
 P.CurrentY = 3100: P.CurrentX = 3000: P.Print "---------------------------------------------"
 P.FontName = "Courier New"
 P.CurrentY = 3400: P.CurrentX = 3000: P.Print "Rechtbündige Zahlenausausgabe - Courier New"
 P.CurrentY = 3600: P.CurrentX = 3000: P.Print Format(ZFZahla, RBC(ZFZahla, 9))
 P.CurrentY = 3800: P.CurrentX = 3000: P.Print Format(ZFZahlb, RBC(ZFZahlb, 9))
 P.EndDoc
 ErrHandler:
 End Sub
 |  |  | 
 |  | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
 
 
  Einloggen  |  Neu registrieren | 
   |  | 
sevZIP40 Pro DLL  
 Zippen und Unzippen wie die Profis!
 
Mit nur wenigen Zeilen Code statten Sie Ihre Anwendungen ab sofort mit schnellen Zip- und Unzip-Funktionen aus. Hierbei lassen sich entweder einzelnen Dateien oder auch gesamte Ordner zippen bzw. entpacken.Weitere InfosTipp des Monats  Oktober 2025 Matthias KozlowskiUmlaute konvertieren
 Ersetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.)Access-Tools Vol.1  
 Über 400 MByte Inhalt
 
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos |