vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück
Rubrik: Oberfläche · MessageBox   |   VB-Versionen: VB4, VB5, VB608.04.04
MsgBox: Zahlen sauber untereinander anzeigen

Mit einem kleinen Trick lassen sich Zahlen in einer MsgBox sauber untereinander anzeigen.

Autor:   Richard MittelstädtBewertung:     [ Jetzt bewerten ]Views:  18.529 
ohne HomepageSystem:  Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 Beispielprojekt auf CD 

Sollen in einer MsgBox Zahlen sauber untereinander angezeigt werden, hat man ein Problem: Wie schafft man es, dass die Zahlenreihen rechtsbündig untereinander stehen?

Dim sMsg As String
sMsg = "    1001" & vbNewLine & "  100001"
MsgBox sMsg

Zahlenreihen sauber untereinander anzeigen

Obiger Code würde die beiden Zahlenreihen nur dann sauber untereinander anzeigen, wenn die MsgBox eine Schrift verwenden würde, bei der jedes Zeichen gleich breit ist.

Ein kleiner Trick schafft Abhilfe:
Für Zahlen kann man anstatt einer Ziffer 2 Leerzeichen einsetzen!

Also basteln wir uns eine kleine Funktion, die einen Zahlen-String mit den erforderlichen Leerzeichen auffüllt, so dass die Zahlenreihen sauber untereinander dargestellt werden.

Public Function ZahlAusrichten(STR1, MLAENGE)
' ------------ 2 Leerzeichen = 1 Ziffer ---------------------------
' *****************************************************************
' Funktion erweitert Einen Zahl-String STR1 auf mindestens MLAENGE
' durch anfügen von Leerzeichen
' Für korrekte Anzeige in MsgBox  ( 2 Leerzeichen = 1 Ziffer)
' Damit kann man in MSG-Boxen Zahlen-Spalten korrekt uebereinanander
' darstellen.
' Nur fuer Zahlen-Spalten !!!
' *****************************************************************
 
  If MLAENGE > Len(STR1) Then
    STR1 = String(2 * (MLAENGE - Len(STR1)), " ") & STR1
  End If
 
  ZahlAusrichten = STR1
End Function

Wenden wir diese Funktion nun auf obiges Beispiel an:

Dim sMsg As String
sMsg = ZahlAusrichten("1001",8) & vbNewLine & _
  ZahlAusrichten("100001", 8)
MsgBox sMsg

Zahlenreihen sauber untereinander anzeigen

HINWEIS:
Diese Vorgehensweise funktioniert nur bei reinen Zahlen-Strings!
 

Dieser Tipp wurde bereits 18.529 mal aufgerufen.

Voriger Tipp   |   Zufälliger Tipp   |   Nächster Tipp

Über diesen Tipp im Forum diskutieren
Haben Sie Fragen oder Anregungen zu diesem Tipp, können Sie gerne mit anderen darüber in unserem Forum diskutieren.

Neue Diskussion eröffnen

nach obenzurück


Anzeige

Kauftipp Unser Dauerbrenner!Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv  Vol.6
(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.
 
   

Druckansicht Druckansicht Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel