Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Text in Zahlen umwandeln
#1
Hallo zusammen,

Zurzeit probiere ich einige Jahreskennzahlen von Unternehmen miteinander zu verrechnen.
Erstaunlicherweise ist es mir gelungen einige Informationen einer Website ohne ein VBA zu ziehen. 
Dazu habe ich den Link in ein Word kopiert und als .iqy Datei gespeichert.
Dies funktioniert bis jetzt super.

Nun erhalte ich jedoch Zahlen, welche als Text formatiert sind. Dies ist an sich nicht das Problem, denn mit mit der Funktion Wechseln konnte ich die meisten texte "besäubern" und umformatieren.
Das Problem ist mehr, dass ich Texte wie z.B. 4.12M oder 52M oder 3.1M habe.
Anfangs dachte ich, wenn ich das "M" durch "00000" ersetze, erhalte ich eine Lösung.
Leider funktioniert dies aber nicht, da die Zahlen nach dem Punkt nicht immer gleich sind.

Hat hier jemand eine sinnvolle Lösung?

im Anhang befindet sich eine Beispieldatei.
Die Lösung sollte wie das grün markierte aussehen.

Vielen Dank im Voraus!

Gruss
Pascal


.xlsx   Beispieldatei.xlsx (Größe: 14,21 KB / Downloads: 14)
Antworten Top
#2
Hallo Pascal,

ich bezweifele jetzt mal, dass Du mit Deinen Daten glücklich werden wirst. Dafür ist die Umwandlung von Text in Zahlen aus unbekannter Quelle zu fehleranfällig.

Aber für's erste kannst Du ja mal folgende Formel nutzen:
=WENN(RECHTS(B3;1)="M";WERT(LINKS(WECHSELN(B3;".";",");LÄNGE(B3)-1))*1000000;WERT(WECHSELN(B3;".";","))*1000)

Gruß,
Lutz
[-] Folgende(r) 1 Nutzer sagt Danke an Lutz Fricke für diesen Beitrag:
  • Cadi1997
Antworten Top
#3
Hallo,

teste mal

Code:
Sub T_2()
Dim C As Range

For Each C In ActiveSheet.UsedRange.Cells
    If InStr(1, C, "M", vbBinaryCompare) > 0 Then
        'C.Select: Stop
        'Debug.Print Val(C)
        C = Val(C) * 1000000
        C.NumberFormat = "#,##0"
        Stop
    End If
Next C
End Sub

mfg
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • Cadi1997
Antworten Top
#4
Hi
Erstmal vielen Dank für deine Antwort.
Leider gibt mir Excel WERT als Fehlermeldung zurück.
Hast du evtl. ein Beispieldokument, in welchem die Formel funktioniert?

Gruss
Pascal
Antworten Top
#5
=--WECHSELN(WECHSELN(A1;".";",");"M";"e6")
Antworten Top
#6
Statt Word, verwende ein Querytable in Excel.

Code:
Sub M_snb()
   Sheet1.Cells.Replace ".", ",", 2
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • Cadi1997
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste