Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1384to1388
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

Zahlenformat im Textfeld

Zahlenformat im Textfeld
09.10.2014 14:26:26
Edwin
Hallo,
dieses Thema wurde bestimmt schon 100.000x diskutiert, aber da ich jetzt nach 3 Stunden googlen nicht weitergekommen bin, traue ich mich jetzt halt doch.
Ich hole mir aus einer Zelle eine Zahl, z.B. 1,63
Bei Übergabe in das Textfeld ist die Zahl bereits amerikanisch, also 1.63
Damit die Zahl deutsch aussieht, könnte ich die Zahl vor Übergabe mit Replace in 1,63 umwandeln.
Vor dem zurückschreiben in die Zelle, könnte ich die Zahl mit Replace wieder amerikanisieren.
1. Das scheint mir aber von hinten durch die Brust, das geht doch bestimmt auch einfacher.
2. Wenn ich eine Ganzzahl z.B. 3 hole, dann wird die im Textfeld auch mit 3 angezeigt. Ich möchte aber, dass Zahlen im Textfeld mit 2 Kommastellen angezeigt werden.
Mit Textfeld = Format(Textfeld, "0.00") wird aus meiner 1.63 aber 163
Vielen Dank für Euer Verständnis.
LG
Edwin

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Wie ist Xl eingestellt? Darauf kommt es ...
09.10.2014 14:47:29
Luc:-?
…zuerst an, Edwin;
2. deutet die Reaktion von Format darauf hin, dass es sich um eine lokal-dt xlVersion handelt;
und 3. ist es ggf besser, WorksheetFunction.Text zu verwenden, denn dort können nationale Codes angegeben wdn. Allerdings beziehen sich beide Fktt bei Interpretation der OriginalZahl auf die lokalen xlEinstellungen, falls .Value einer Zelle benutzt wird. Bei Verwendung des bereits formatierten ZellInhalts mit .Text wird in beiden Fällen iaR nichts formatiert.
Gruß, Luc :-?

AW: Wie ist Xl eingestellt? Darauf kommt es ...
09.10.2014 15:18:18
Edwin
Hallo Luc,
ich verstehe nur Bahnhof, da ich keine/wenig VBA-Programmierkenntnisse habe.
zu 2.
wo sehe ich um welche Version es sich handelt?
zu 3.
wie müsste der VBA hierzu aussehen?
LG
Edwin

Anzeige
Was hat die lokale Vs primär mit VBA zu tun, ...
09.10.2014 15:56:09
Luc:-?
…Edwin?
Ich hatte lediglich gefragt, ob du ein deutsches oder US-Xl benutzt, weil du amerikanisch ins Spiel gebracht hast und ein Problem mit DezimalPkt/-Komma hast.
„Der VBA“ ist immer gleich, denn VBA ist eine PgmierSprache. Du willst den PgmCode wissen, aber du hast ja schon einen. Ersetze als Anfang einfach mal Format durch WorksheetFunction.Text. Dem 2.Argument kannst du dann mal einen KlammerAusdruck voranstellen, was aber nur bei Datumsangaben zu fktionieren scheint, zB: "[$-409]MMM TT, JJJJ"
In deinem Fall kannst du sicher auch mit Format von lokalem (XlVs dt) DezimalKomma zu -Pkt mit fmtZahl = Format(zahl*100, "0\.00") wechseln und umgekehrt dann mit: zahl = CLng(Replace(fmtZahl, ".", "")) / 100
Luc :-?

Anzeige
TextBox1 = Cells(1,1).Text
09.10.2014 16:25:12
EtoPHG
löst das Problem einfach, Edwin
Ein TextBox enthält, wie ihr Name schon sagt, eben nur Text.
Und eine Zelle enthält Zahlen oder Text. Mit der .Text Eigenschaft überträgst du den sichtbaren Inhalt der Zelle in eine TextBox.
Gruess Hansueli

AW: TextBox1 = Cells(1,1).Text
10.10.2014 09:11:34
Edwin
Hallo Hansueli,
der sichtbare Inhalt ist z.B. "3,00", da die Zelle als Zahl mit 2 Kommastellen formatiert ist.
Der Zellinhalt ist aber "3" und die "3" wird dann auch übergeben.
LG
Edwin

...nicht verstehen wollen, oder können?
10.10.2014 09:28:00
EtoPHG
Edwin?,
Wenn du die Zuweisung zur TextBox mit der .Value Eigenschaft der Zelle machst, wird der Wert in der TextBox als String dargestellt.
Wenn du die Zuweisung zur TextBox mit der .Text Eigenschaft der Zelle machst, wird der sichtbare Zellinhalt in der TextBox als String dargestellt.
Ich kann nicht mehr sagen, da du leider deinen Code zu den ausgeführten Tests nicht zeigst.
Gruess Hansueli

Anzeige
AW: ...nicht verstehen wollen, oder können?
10.10.2014 10:48:28
Edwin
Hallo Hansueli,
kein Problem, zeige ich gerne.
Dim F As String, M As String, A As String
Worksheets("Test").Activate
Range("B3").Select
F = ActiveCell.FormulaR1C1
Range("C3").Select
M = ActiveCell.FormulaR1C1
Range("D3").Select
A = ActiveCell.FormulaR1C1
txtFrühstück.Value = F
txtMittagessen.Value = M
txtAbendessen.Value = A
Ich hoffe das hilft weiter.
LG
Edwin

AW: ...nicht verstehen wollen, oder können?
10.10.2014 10:58:04
Edwin
Hallo Hansueli,
Problem gelöst.
Ich hatte Deine Lösung im "Betreff" überlesen.
Sorry!
LG
Edwin

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige