Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
320to324
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
320to324
320to324
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zahlenwert aus string auslesen

Zahlenwert aus string auslesen
12.10.2003 21:59:11
Björn
Huhu zusammen,

kann mir gerade jemand sagen, wie man per VBA eine zahl aus einem String mt Text auslesen kann? Also zB aus "1000 DM" mache 1000 ?

Vielen Dank!

Gruß

Björn

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahlenwert aus string auslesen
12.10.2003 22:34:40
Klaus-Dieter
Hallo Björn,

mit diesem Makro geht es, bezogen auf dein Beispiel:


Option Explicit
Sub isolieren()
Dim r As Integer
For r = 2 To Range("A65536").End(xlUp).Row
Cells(r, 2).NumberFormat = "0"
Cells(r, 2) = Left(Cells(r, 1), Len(Cells(r, 1) - 3))
Next r
End Sub



Code eingefügt mit: Excel Code Jeanie

So sieht das Ergebnis aus:

Anzeige
AW: Zahlenwert aus string auslesen
12.10.2003 22:40:30
th.heinrich
hallo Björn,

warum per VBA ?

SUCHEN-ERSETZEN. suchen nach DM ersetzen durch nichts.

gruss thomas
AW: Zahlenwert aus string auslesen
12.10.2003 22:41:25
Holger Levetzow
versuche es mal so:

Sub zahl()
Text = Range("A1")
For i = 1 To Len(Text)
If Asc(Mid(Text, i, 1)) >= 48 And Asc(Mid(Text, i, 1)) <= 57 Then ergebnis = ergebnis & Mid(Text, i, 1)
Next
ergebnis = ergebnis * 1
End Sub

in Ergebnis steht dann die Zahl.
Läßt Du ergebnis = ergebnis * 1 weg, steht in ergebnis die zahl als Text.

Holger
AW: Zahlenwert aus string auslesen
12.10.2003 23:20:56
Björn
Huhu,

Danke Euch Dreien!

Ich hatte überlegt, ein Script zu schreiben, das alle DM-Werte in Tabellen in Euro umrechnet. die Lösungsvvorschläge haben gezeigt, daß das gar nicht so einfach ist. Ein Ansatz auf Excel-basis allein scheidet natürlich leider aus :-(.

Der Ansatz von Holger hat mich zunächst am meisten beeindruckt und es ist wohl auch die treffendeste Antwort auf meine insoweit zu unpräzise Frage. Ich hab 's auch entsprechend für einen kleinen Range-Auschnitt weiterentwickelt - s.u.. Aber es geht natürlich fast zu weit, weil dadurch auch nicht Währungsrelatierte Kombinationen von Text und Zahlen verloren gehen könnten. Solchermaßen muß die Reise wohl doch eher in die Richtung von Klaus-Dieters Ansatz gehen. Per se geht der natürlich auch zu weit, weil er voraussetzt, daß alle Werte-Kombinationen ein " DM" am Ende besitzen. Daher muß es wohl so werden:

wenn am Anfang oder am Ende ein "DM " oder " DM" und der Ausdruck davor bzw dahinter eine Zahl enthält, dann kappe 3 Stellen vor bzw. hinter der Zahl.....

Ob es besonders zuverlässig wird...mal gucken.

Jedenfalls vielen Dank Euch allen noch einmal!

Liebe Grüße

Björn



Sub zahl()
z = 1
Do While z < 500
Text = Cells(z, 1).Value
For i = 1 To Len(Text)
If Asc(Mid(Text, i, 1)) >= 48 And Asc(Mid(Text, i, 1)) <= 57 Then
ergebnis = ergebnis & Mid(Text, i, 1)
End If
Next
If IsNumeric(ergebnis) Then
ergebnis = ergebnis * 1
Cells(z, 1) = ergebnis
End If
ergebnis = ""
z = z + 1
Loop
End Sub

Anzeige
AW: Zahlenwert aus string auslesen
12.10.2003 23:40:54
Holger Levetzow
dann solltest Du solche Zeichen wie , integrieren (Nr. 44).

Holger

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige