Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
700to704
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
700to704
700to704
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Format ListBox

Format ListBox
28.11.2005 09:46:02
Walter
Guten Morgen,
ich habe folgen Zeile:
TextBox23.Text = Format(ListBox1.List(ListBox1.ListIndex, 1), "000 00")
leider werden -Zahlen angezeigt anstatt Werte aus der ListBox,
Wieso ?
Gruß Walter

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Format ListBox
29.11.2005 08:27:27
Stefan
Hallo Walter,
Leider verstehe ich nicht, welche Zahlen angezeigt werden, etwa 000 00 ?
Dann versuche es doch mal "### ##" als Formatierung.
Gruß Stefan.
AW: Format ListBox
29.11.2005 09:26:55
Walter
Guten Morgen Stefan,
ja habe auch getestet "### ##", leider ohne Erfolg.
Habe in der "

Private Sub UserForm_Initialize()" folgende Zeile:
TextBox23.Text = Format(ListBox1.List(ListBox1.ListIndex, 1), "### ##")
in dem Makro für das Button damit der geänderte Wert zurück geschrieben wird ebenfalls

Private Sub CommandButton19_Click()
ListBox1.List(ListBox1.ListIndex, 1) = Format(TextBox23.Text, "### ##")
End Sub

Das ist die TextBox:

Private Sub TextBox23_Change()
End Sub

Jetzt funktioniert es in der ListBox, aber in der TextBox23 wo ich z.b. 21808 wird nach dem auslösen des Button Richtig in die ListBox1 gesetzt: 218 08 aber nicht in der Textbox, da steht immer noch 21808.
Kann man das ändern, dass man beim anklicken und ändern dann auch in der TextBox23
der Wert dann direkt so steht ? 218 08
Gruß Walter
Anzeige
AW: Format ListBox
29.11.2005 17:56:34
Stefan
Hallo Walter,
TextBox23.Text liefert als Ergebnis keine Zahl, sondern einen Text. Der wird folglich mit Format nicht richtig umgewandelt.
Folglich muss der Text erst in eine Zahl umgewandelt werden und dann wieder in einen formatierten Text, etwa so:
TextBox23.Text = Format(CDbl(TextBox23.Text), "### ##")
Allerdings tritt dann ein Fehler auf, wenn es sich in Textbox23.Text nicht um eine umwandelbare Zahl handelt. Aber vielleicht kann dieser Fehler bei Dir gar nicht auftreten?
Gruß Stefan.
AW: Format ListBox
29.11.2005 19:08:11
Walter
Hallo Stefan,
habe getestet, geht nicht. 216 04 wird angezeigt= -6149 76
Private Sub CommandButton18_Click()
'Private Sub WertEinfügen()
ListBox1.List(ListBox1.ListIndex, 1) = (TextBox23)
ListBox1.List(ListBox1.ListIndex, 1) = Format(TextBox23.Text, "### ##")
TextBox23.Value = ListBox1.List(ListBox1.ListIndex, 1) 'zurück
'---vo Stefan--&gt&gt
'TextBox23.Text = Format(CDbl(TextBox23.Text), "### ##")
Wieso ?
gruß Walter
Anzeige
Wichtig !!! EILT !!!
29.11.2005 19:21:55
Walter
Hallo Stefan,
habe gerade festgestellt das bei dieser Version das Datum in ListBox richtig
eingesetzt wird.
ListBox1.List(ListBox1.ListIndex, 1) = CDate(TextBox23) 'rein
TextBox23 = ListBox1.List(ListBox1.ListIndex, 1) 'zurück
so wird das in der Textbox direkt richtig eingesetzt, habe 15-3-05 eingesetzt,
drücke das Button und in der TextBox23 erscheint 15.03.2003 und auch in der ListBox
Wieso ?
Gruß Walter
AW: Wichtig !!! EILT !!!
29.11.2005 19:48:40
Stefan
Hallo Walter,
Dumme Frage, was willst Du eigentlich erreichen?
Der Benutzer soll in TextBox23 einen Wert eingeben?
Dieser soll dann in der Listbox erscheinen?
Danach soll er wieder in die TextBox rein?
Das das mit CDate funktioniert liegt meines Erachtens daran, dass für ein Datum systemseitige Standardformate vorgesehen sind.
Somit ist strText= dtmDatum genauso wie strText= Format(dtmDatum,"TT.MM.JJJJ") zu sehen, wenn das Systemformat für das Datum entsprechen gesetzt wird.
Schreib mit doch mal, was Du eigentlich erreichen willst, dann kann ich vielleicht besser helfen.
Gruß Stefan.
Anzeige
AW: Wichtig !!! EILT !!!
29.11.2005 20:32:42
Walter
Hallo Stefan,
also ich möchte die Eingabe 21609 in die Textbox23 eingeben und es soll in der
ListBox1 dann 216 09 (also mit Leerzeichen) erscheinen. Ferner soll dann auch in der TextBox auch 216 09 erscheinen, muß aber nicht, wenn man neu in der TextBox selektiert
wird ja immer alles Richtig angezeigt also mit Leerzeichen 216 09.
Hoffentlich war etwas verständlich,
gruß Walter
AW: Wichtig !!! EILT !!!
29.11.2005 21:49:56
Stefan
Hallo Walter,
handelt es sich immer um 5-stellige Zahlen, die eingegeben werden sollen?
Gruß Stefan.
AW: Wichtig !!! EILT !!!
29.11.2005 23:14:59
Walter
Hallo Stefan,
ja immer 5 Stellig. 222 00 us.w.
gruß Walter
AW: Wichtig !!! EILT !!!
30.11.2005 08:17:07
Stefan
Hallo Walter,
Damit sollte es klappen:

Private Sub TextBox23_Change()
If Len(TextBox23.Text) = 5 And IsNumeric(TextBox23.Text) Then
TextBox23.Text = Format(CVar(TextBox23.Text), "### ##")
End If
End Sub

Gruß Stefan.
Anzeige
Danke o.t.
30.11.2005 09:14:26
Walter
Hallo Stefan,
Danke für Deine Nacharbeit.
Funktioniert,
gruß Walter
Bitte noch einmal !!!!
30.11.2005 15:15:21
Walter
Hallo Stefan,
keine Sorge läuft alles Prima. Jetzt habe ich festgestellt das in einem anderen
Listenfeld auf einer UF die Zahlen nicht mit 0 eingelesen werden.
Anstatt 0001 wird nur 1 angezeigt.
Hier die UF:

Private Sub UserForm_Initialize()
Dim lzeile As Long
Dim i As Integer, j As Integer
lzeile = Sheets(strSh).Cells(Sheets(strSh).Rows.Count, ersteSpalte).End(xlUp).Row
With ListBox1
.ColumnCount = 3                    'Anzahl der Spalten
.ColumnWidths = "2cm;1cm;5cm"       ' ;3cm;4cm" '<weg
.Clear
'Listbox füllen
.List = Range(Sheets(strSh).Cells(intstartzeile, ersteSpalte), _
Sheets(strSh).Cells(lzeile, ersteSpalte + 2)).Value
ListBox1.List(i, 0) = Format(ListBox1.List(i + 2, "0000")) <<< habe ich reingesetzt,
ist die 2 Spalte !
End With
'   ListBox1.List(i, 1) = Format("0000")
NummernAktualisieren                      'muß stehen da das Format drin ist "00"
UpdateButtons
VK_UF.Label2 = ActiveSheet.Range("AF91").End(xlDown)
End Sub

Vielleicht kannst Du mir einen Tip geben ?
Gruß Walter
Anzeige
AW: Bitte noch einmal !!!!
30.11.2005 16:16:55
Stefan
Hallo Walter,
ich verstehe das nicht ganz.
i wurde oben definiert, aber nicht initialisiert.
Wenn Du alle Zeilen in Spalte 2 ändern möchtest, müsste das Script so lauten:
For i = 0 to (lzeile-intstartzeile)
ListBox1.List(i, 1) = Format(ListBox1.List(i, 1), "0000")
next i
Gruß Stefan.
Teilerfolg...
30.11.2005 16:25:49
Walter
Hallo Stefan,
es werden jetzt aktuelle alle Zahlen Richtig geladen.
Aber leider kommt eine Fehlermeldung:
.List(.ListIndex, 1) = TextBoxVK &lt bleibt hier stehen
.List(.ListIndex, 2) = TextBox_Name
"Eigenschaft List konnte nicht abgerufen werden, Index Eigenschaftsfeld ungültig.
Was ist den das ?
Gruß Walter
Anzeige
Hallo Entschuldigung...
30.11.2005 22:29:07
Walter
Hallo Stefan,
entschuldige BITTE, ich hatte einen Fehler gemacht,
funktioniert natürlich.
Gruß Walter

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige