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

Dezimal aus String ohne letzte Stelle

Dezimal aus String ohne letzte Stelle
10.02.2009 16:50:00
WolfgangN
Hallo,
Ich lasse mir mit einer Funktion DezimalausString die Ziffern aus einem String auslesen.
Der String setzt sich zusammen aus einer Zahl und der Einheit, z.B.: 1,99942 € /m3.
Leider ermittelt mir die Funktion außer den vorderen Ziffern auch die 3 von Kubikmeter.
Diese brauche ich natürlich nicht. Den Bereich mit Left((xxx),7) einzugschränken hilft natürlich auch nicht, da die Zahl auch 2 € /m3 sein kann. Wie kann ich die Funktion veranlassen die letzte Ziffer von Kubik weg zulassen?
DezimalausString() - Right(),1 geht auch nicht.
Alles befindet sich in einem umfangreichen Makro.
Vielen Dank und Gruß
Wolfgang
Die Funktion lautet:

Function DezimalAusString(Text As String) As Double
Dim Tx As String
Dim Vv As Boolean
Dim Hh As Boolean
Dim i As Long
For i = 1 To Len(Text)
Vv = Hh
If Asc(Mid(Text, i, 1)) >= 48 And Asc(Mid(Text, i, 1)) 


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dezimal aus String ohne letzte Stelle
10.02.2009 17:04:42
Uwe
Hi Wolfgang,
vielleicht "kurz und schmerzlos" so:?

Function DezimalAusString(Text As String) As Double
Dim Tx As String
Dim i As Long
For i = 1 To Len(Text)
If (Asc(Mid(Text, i, 1)) >= 48 And Asc(Mid(Text, i, 1)) 


Gruß
Uwe
(:o)

Danke
10.02.2009 17:15:06
WolfgangN
Hallo Uwe,
vielen Dank, super, klappt wie gewollt.
Kurz und schmerzlos leider nur für Dich, hatte schon alles mögliche probiert, lange und schmerzvoll.
Also nochmals vielen Dank und Gruß
Wolfgang
AW: Dezimal aus String ohne letzte Stelle
10.02.2009 17:09:00
Ingo
hallo,
ungetestet:
Probier mal:
For i = 1 To Instr(Text,"/")
mfG
Ingo Christiansen
Anzeige
Danke
10.02.2009 17:20:26
WolfgangN
Hallo Ingo,
auch Deine Variante klappt, besten Dank und Gruß
Wolfgang
Einfacher und schneller mit Formel ....
10.02.2009 17:24:45
Renee
Hi Wolfgang,
Wie wärs den mit der Formel (wenn der String in A1 steht):

=LINKS(A1;FINDEN(" ";A1))*1


Die wär sicher 100mal schneller als deine VBA Funktion !
GreetZ Renée

Danke
10.02.2009 17:41:00
WolfgangN
Hallo Renee,
danke für Deine Formel, die auch funktioniert und die sogar ich verstehe.
mal sehen wofür ich mich entscheide, alle 3 Lösungen klappen.
Gruß
Wolfgang

127 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige