Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: String in Zahl umwandeln

String in Zahl umwandeln
LotharP
Hallo Leute,
ich habe eine Zeichenfolge di ich in Zellen einlese, diese Zeichenfolge sieht im Ursprung so aus
{x 3 2 0 1 0}
diese Zeichenfolge habe ich um die Klammern bereinigt und habe jetzt x 3 2 0 1 0 dort stehen.
Diesen String möchte ich in 2er Blöcken, wenn es eine Zahl ist, in eine Zahl umwandeln!
Also einen String der bsw. so aussieht "3 " in eine 3 oder ein string der so aussieht "13" in eine 13 usw.
Wäre nett wenn mir jemand was sagen könnte! Ich habe nichts gefunden was DIREKT umwandelt!
Vieleicht gibt es eine einfache funktion wie format?
Vielen Dank und l.G.
Lothar
Anzeige

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

Betreff
Benutzer
Anzeige
AW: String in Zahl umwandeln
14.10.2010 14:16:09
Hajo_Zi
Hallo Lothar,
einfach, Daten Text uin Spalten.

AW: String in Zahl umwandeln
14.10.2010 14:21:32
LotharP
Hallo Hajo,
ja Danke das stimmt das ginge aber ich hab mich falsch ausgedrückt, ich lese nicht in Zellen ein sondern aus Zellen aus!
Also das Ganze mache ich in VBA und habe dann in einer VAriablen den Wert stehe, den ich "zerpflücken" will.
Wenn du hier bitte weiterhelfen könntest, Danke!
Gruß
Lothar
Anzeige
AW: String in Zahl umwandeln
14.10.2010 14:24:49
Hajo_Zi
Hallo Lothar,
Split, suche mal im Forum.

AW: String in Zahl umwandeln
14.10.2010 14:36:50
LotharP
Hallo Hajo,
Danke nochmal! Ich schau mal wie ich da weiter komme.
Vieleicht mach ichs doch einfach über die Funktionen in Excel, denn das scheint mir mit Split im ersten Moment nicht ganz das was ich haben möchte!
Nochmals Danke und L.G.
Lothar
Anzeige
AW: String in Zahl umwandeln
14.10.2010 18:39:34
Holger
Hallo Lothar,
mit if Isnumeric(string)= true kannst du prüfen, ob es eine Zahl ist oder nicht.
Hajo_Zi hat schon recht, wenn du den string zerlegen willst, brauchst du ein
Kriterium. Also wieviele Stellen und mit welchem Character sind die einzelnen Informationan getrennt. Da bietet sich Spilt schon an.
Das ganze geht so:
Du brauchst eine Variant Variable, eine Long und eine String.
Du könntest den String so zerlegen:
Sub Anregung
strDeli= " "
intTemp (Variant) = Split(strZelle (String), strDeli(String)
Jetzt wird in deinem Beispiel der Wert zerlegt pro Leerzeichen.
Du brauchst in dem Wert natürlich eine eindeutige Trenninformation.
Dann:
For lngZeile (long) = 0 To UBound(intTemp)
if isnumeric(lngZeile(intTemp) = true
usw
next lngZeile
End Sub
Schreib wenn das vom Ansatz was für Dich ist.
Anzeige
AW: String in Zahl umwandeln
15.10.2010 13:22:37
LotharP
Hallo Ihr Beiden,
Vielen Dank nochmal für eure Mühe!!
Hab' gestern nicht mehr reingeguckt und heute auch nur so nebenbei!
Werde das so probieren, Danke für den Source! Hatte gestern schon ein bisschen geschaut, aber eher erfolglos!
Habe mir dann zwar mit dem text in Spalten geholfen werde aber auch die Varianten mal probieren, vieleicht geht das schneller / eleganter als ich es gelöst habe!
Werde mich aber am Montag nochmal melden ob ich hiermit klar / weiter gekommen bin!!!!
Danke nochmal und ein schönes Wochenende!
Lothar
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

String in Zahl umwandeln in Excel und VBA


Schritt-für-Schritt-Anleitung

Um einen String in eine Zahl umzuwandeln, gibt es verschiedene Ansätze in Excel und VBA. Hier ist eine Schritt-für-Schritt-Anleitung, wie Du dies sowohl in einer Excel-Formel als auch in VBA durchführen kannst.

In Excel:

  1. Daten vorbereiten: Stelle sicher, dass Deine Daten in einer Zelle stehen, z.B. in A1.
  2. Text in Zahl umwandeln Excel Formel: Verwende die folgende Formel, um den Text in Zahl zu konvertieren:
    =WERT(A1)

    Diese Formel wandelt den Text in der Zelle A1 in einen Zahlwert um.

In VBA:

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Neues Modul erstellen: Klicke mit der rechten Maustaste auf „VBAProject (DeineArbeitsmappe)“ und wähle „Einfügen“ > „Modul“.
  3. Code einfügen: Füge den folgenden Code ein:

    Sub StringInZahlUmwandeln()
       Dim strInput As String
       Dim intOutput As Long
    
       strInput = "3" ' Beispiel-String
       If IsNumeric(strInput) Then
           intOutput = CLng(strInput) ' Umwandlung in Long
           MsgBox "Die Zahl ist: " & intOutput
       Else
           MsgBox "Der String ist keine Zahl."
       End If
    End Sub

Häufige Fehler und Lösungen

  • Fehler: Wert kann nicht konvertiert werden: Wenn Du einen Fehler erhältst, könnte es daran liegen, dass der String nicht nur numerische Zeichen enthält. Stelle sicher, dass der String nur Zahlen enthält.
  • Lösung: IsNumeric-Funktion nutzen: Verwende die IsNumeric-Funktion, um zu überprüfen, ob der String in eine Zahl umgewandelt werden kann, bevor Du die Umwandlung versuchst.

Alternative Methoden

Neben der Verwendung von WERT und VBA gibt es auch andere Methoden, um einen Text in eine Zahl umzuwandeln:

  • Text in Spalten: Du kannst die Funktion "Text in Spalten" in Excel verwenden, um Daten zu trennen und sie gleichzeitig in Zahlen umzuwandeln. Wähle die Zelle aus, gehe zu „Daten“ > „Text in Spalten“ und folge dem Assistenten.
  • Formel für mehrere Werte: Wenn Du mehrere Werte in einer Zelle hast, kannst Du die Funktion TEXTKETTE oder VERKETTEN verwenden, um sie zu kombinieren, bevor Du sie in eine Zahl umwandelst.

Praktische Beispiele

  1. Einfaches Beispiel:

    • Angenommen, in der Zelle A1 steht "4".
    • Die Formel =WERT(A1) gibt 4 zurück.
  2. VBA Beispiel für mehrere Zahlen:

    Sub MehrereStringsUmwandeln()
       Dim strInput As String
       Dim arrValues() As String
       Dim i As Integer
    
       strInput = "3 5 7"
       arrValues = Split(strInput, " ")
    
       For i = LBound(arrValues) To UBound(arrValues)
           If IsNumeric(arrValues(i)) Then
               Debug.Print CLng(arrValues(i))
           End If
       Next i
    End Sub

Tipps für Profis

  • Verwende CLng oder CInt: Wenn Du sicher bist, dass der String eine Zahl ist, kannst Du CLng oder CInt verwenden, um den String direkt in einen Integer oder Long zu konvertieren.
  • Fehlerbehandlung in VBA: Implementiere Fehlerbehandlung mit On Error Resume Next, um unerwartete Fehler während der Umwandlung zu vermeiden.
  • Reguläre Ausdrücke: Wenn Du komplexe Strings hast, könnten reguläre Ausdrücke in VBA hilfreich sein, um nur die Zahlen aus einem String herauszufiltern.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass mein String nur Zahlen enthält?
Verwende die Funktion IsNumeric, um zu überprüfen, ob der String in eine Zahl umgewandelt werden kann.

2. Was mache ich, wenn mein String Leerzeichen enthält?
Nutze die Funktion TRIM, um überflüssige Leerzeichen vor der Umwandlung zu entfernen.

3. Kann ich auch in Access einen String in eine Zahl umwandeln?
Ja, die Methoden sind ähnlich. In Access kannst Du die CInt oder CLng Funktionen verwenden, um Strings in Zahlen zu konvertieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige