String in Zahl umformen

Eva11

Grünschnabel
Hallo,

ich hätte ein Problemchen in VB die ich leider nicht lösen kann:
In einer Spalte muss ich von einem String die letzten vier Buchstaben löschen und dann den Rest als Zahl formatieren (z. B. Zelleninhalt: 23643 usd muss in 23643 als Zahl umgeformt werden). Die Länge der Spalte kann variieren.
Hat jemand ein Tipp wie so ein Makro aussehen sollte?

Freundliche Grüsse
 
Visual Basic:
MeineZahl=clng(left(MeinString,Len(MeinString)-4))

Das setzt voraus, dass immer nur 4 Buchstaben hinten dranhängen.
 
Als Ergänzung zu Zvoni, clng wandelt in das Long-Format um. Um einen String allgemein als Zahl zu wandeln, verwendet man Val():
Visual Basic:
Zahl = Val(String)
Die zurückgegebene Zahl ist an keine Konvention (also Single, Long, Decimal) oä gebunden und kann natürlich mit den Konverterfunktionen in das gewünschte Format gewandelt werden.


Der Doc!
 
Mal noch nen Nachtrag zum Post von Doc:

Theoretisch könnte/müsste man sogar noch ne Fehlerbehandlung einbauen im Stil von

Visual Basic:
If IsNumeric(String) Then

Zahl=Val(String)

End If
 
Vielen Dank für die Antworten!:)

Bin leider absolute Anfängerin....meine weitere Frage wäre wie kann man die einzelnen Zellen in der Spalte "ansprechen"? Ich habe in der Spalte die ich umformen muss etwa 20 bis 30 Zellen, die Anzahl variiert aber...

Könnt ihr mir auch ein Buch empfehlen, mit vielen "Praxisbeispielen" zwecks Einarbeitung?

Viele Grüsse
Eva
 
Eine Zelle kannst du in Excel aus VBA wie folgt ansprechen:

Visual Basic:
For Zeile=ErsteZeile To LetzteZeile

Tabelle1.Cells(Zeile,Spalte)=Val(MeinStringmitZahlen)

Next

Was Literatur betrifft bin ich überfragt, da mir in 95% der Fälle die VB-Hilfe in Excel vollkommen ausreicht.
 
Zurück