jougli Geschrieben 3. April 2001 Geschrieben 3. April 2001 Hi, kann mir jemand helfen. Ich möchte aus einem Text eine Dezimalzahl extrahieren können. Eine ganze Zahl kann ich z.B. Text = " 5 % Provision" Text = Val(Text) Es wird dann nur 5 gemerkt. Das Problem, es funktioniert nicht mit Dezimalzahlen (Komma wird nicht erkannt). Hat jemand eine Idee?
Rosebutt Geschrieben 3. April 2001 Geschrieben 3. April 2001 bisserl umständlich, aber versuch mal den text zu zerlegen, und zwar in buchstaben und sonstiges bis zur ersten zahl: "Alkoholgehalt:" und "4,8% Vol" Dann klapperst du den zweiten Textstring (der fängt ja jetzt mit der Zahl an)einstellig ab, bis ein Zeichen kommt, das kein komma/Punkt ist, und asciimässig ausserhalb der Werte 48-57 (Zeichen 0-9) liegt. wenn das der fall ist, bist du nämlich auf der ersten stelle nach der zahl, und kannst dort den rest des textes abschneiden. methoden: -mid$ -zähler (um zu bestimmen, ab welcher stelle später der Resttext abgeschnitten werden soll)
Wolle Geschrieben 3. April 2001 Geschrieben 3. April 2001 Hi, ich habe das gerade mal ausprobiert. Du mußt als Dezimaltrennzeichen einen Punkt statt einem Komma nehmen. Dann klappt es mit val(). Falls das nicht möglich ist, kannst du immernoch den String in eine Hilfsvariable einlesen und da mit instr() und mid() das Komma in einen Punkt umwandeln.
jougli Geschrieben 3. April 2001 Autor Geschrieben 3. April 2001 Hi, habe schon eine bessere Lösung bei http://spotlight.de/zforen/mvb/t/forum_mvb_1.html erhalten. Text = " 12,34 % Provision" Text = Replace(Text, "%", "X") Text1.Text = Val(Replace(Text, ",", "."))
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden