Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1492to1496
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
Inhaltsverzeichnis

UF Textbox Zahl erste Stelle 0 unterschied. Länge

UF Textbox Zahl erste Stelle 0 unterschied. Länge
20.05.2016 16:22:15
Peter
Hallo Excelspezialisten,
ich habe eine Exceltabelle mit ca. 9 Spalten mit Telefonnummern unterschiedlicher Länge. In der Tabelle habe ich diese mit benutzerdefiniert 0########### formatiert.
Nun möchte ich diese Zahlen in der UF Textbox richtig anzeigen lassen.
Da diese unterschiedlich lang sind fehlt mir leider das Wissen wie das möglich ist.
Besten Dank
Gruss Peter

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Formatierten Zellwert abfragen
20.05.2016 16:28:04
Daniel
Hi
wenn du den Wert der TextBox zuweist, dann verwende mal .TEXT statt .VALUE beim Abfragen des Zellwertes.
.Value ist der unformatierte Zellwert, .Text ist der formatierte Text wie er auf dem Bildschirm angezeigt wird:

Textbox1.Text = Cells(x, y).Text
Gruß Daniel

AW: Formatierten Zellwert abfragen
20.05.2016 16:40:28
Peter
Hallo Daniel,
besten Dank für Deine Hilfe.
In einer Musterdatei funktioniert das einwandfrei.
Aber fülle die Textboxes über eine Listbox mit folgendem Makro:
Private Sub ListBox1_Click()
'Bestimmung welcher Eintrag in Listbox ausgewählt
Dim X As Long, lZeile
If bEnableListbox1_Click = False Then Exit Sub
With ListBox1
For lIndex = 1 To .ListCount - 1
If .Selected(lIndex) Then
lZeile = .List(lIndex, 0)
If IsNumeric(.List(lIndex, 0)) Then Rows(.List(lIndex, 0)).Select
For X = 2 To 38 '55 wenn alle TextBoxen erstellt sind   '29
'                Me.Controls("TextBox" & X).Value = .List(lIndex, X - 2)
Me.Controls("TextBox" & X).Text = .List(lIndex, X - 2)
Next X
Exit For
End If
Next lIndex
End With
End Sub

Ich habe wie Du erkennen kannst Me. Controls von Value auf Text umgeändert - funktioniert aber nicht.
In der Listbox werden die Zahlen richtig angezeigt aber in die Textbox ohne 0 übernommen.
Hast Du bitte eine Lösung?!
Gruss Peter

Anzeige
AW: Formatierten Zellwert abfragen
20.05.2016 16:46:02
selli
hallo peter,
wie ist das?
Me.Controls("TextBox" & X).Text = format(.List(lIndex, X - 2),"0###########")
gruß
selli

AW: Formatierten Zellwert abfragen
20.05.2016 16:55:28
Peter
Hallo Selli,
das funktioniert leider so nicht, denn die Telefonnummern haben unterschiedliche Längen
Wenn ich Deinen Vorschlag nehme, dann werden je nach Länge eine bis mehrere Nullen vorne
eingefügt.
Vielleicht fällt Dir ja noch etwas ein. Oder ist es besser die Tabelle nicht als benutzer-
definierte Zahl sondern als Text zu formatieren?
Gruss Peter

AW: Formatierten Zellwert abfragen
20.05.2016 16:48:41
Daniel
Hi
bitte genauer lesen.
eine TextBox enthält immer TEXT, dh .Value und .Text ist bei einer TextBox das gleiche.
du musst das .Text verwenden, wenn du den Wert aus der Zelle liest.
du liest hier aber den Wert nicht aus einer Zelle, sondern aus der Listbox in die Textbox ein.
jetzt hängt es davon ab, wie du die Listbox befüllt und müsstest beim Befüllen der Listbox das entsprechend beachten.
Wenn du die Listbox jedoch über Rowsource mit dem Zellbereich verknüpft hast, dann geht's gar nicht.
da ich jetzt deinen Code und deine Datei nicht genauer kenne und auch nicht weiss, wie du die Listbox befüllst, dann füge die 0 doch einfach "hart" hinzu:
Me.Controls("TextBox" & X).Value = "0" & .List(lIndex, X - 2)
gruß Daniel

Anzeige
AW: Formatierten Zellwert abfragen
20.05.2016 16:59:32
Peter
Hallo Daniel,
habe Deinen Vorschlag ausprobiert. Problem es wird bei allen 38 Textboxes eine 0 eingefügt.
Leider keine Lösung.
Ich hatte mal einen ähnlichen Versuch:
Private Sub TextBox22_Change()
TextBox22.Value = Format(TextBox22.Value, "0###########")
End Sub
Ich bräuchte jedoch die Möglichkeit der Variablen ,0###### , 0#######, 0########, usw.
Kennst Du so eine Lösung wenn dann ect.
Gruss Peter

AW: Formatierten Zellwert abfragen
20.05.2016 17:25:25
Daniel
Hi
dann füge die 0 doch nur bei der TextBox hinzu, bei der sie benötigt wird.
du solltest ja wissen, in welche TextBox die Telefonnummer geschrieben wird:
Me.Controls("TextBox" & x).value = IIF(X=?, "0", "")
oder sollten mehrere TextBoxen betroffen sein, auch mit Select case

Select Case X
Case 1, 2, 3 'Textboxnummern, die die 0 benötigten
Me.Controls("TextBox" & X).Value = "0" & .List(lIndex, X - 2)
Case Else
Me.Controls("TextBox" & X).Value = .List(lIndex, X - 2)
End Select
Gruß Daniel

Anzeige
AW: Formatierten Zellwert abfragen
20.05.2016 17:29:44
Peter
Hallo Daniel,
nochmals besten Dank für Deine Hilfe.
Das Problem ist nicht nur welche TextBox sondern auch die unterschiedliche
Länge der Telefonnummern.
Ich habe das Problem jetzt so gelöst, dass ich die Tabelle mit Text formatiert habe
und das funktioniert jetzt einwandfrei.
Gruss Peter

AW: Formatierten Zellwert abfragen
20.05.2016 17:37:32
Daniel
wenn du einfach eine 0 davor schriebst ist die Länge der Telefonnummern doch pups.
Gruß Daniel

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige