Textzeichen aus Zellen entfernen (nur Ziffen auslesen)

Mit dem folgenden Beispiel-VBA Code werden aus beliebigen Zellen alle Text-Zeichen außer Zahlen entfernt. Dies kann nach einem Datenimport notwendig werden. Denn durch den Import können sich beispielsweise Leerzeichen oder andere undefinierbare Zeichen eingeschlichen haben.

Wichtig ist, das Dezimaltrennzeichen im VBA-Code  zu definieren, denn sonst wird es als unerwünschtes Zeichen erkannt und auch entfernt.

Voreingestellt ist das Komma (,) als Dezimaltrennzeichen.

Dieses Beispiel bereinigt die Zellen A1 bis A3. 

Sub Zahlen_auslesen()
dezimaltrennzeichen = "," 'Dezimaltrennzeichen festlegen
For i = 1 To 3 'Exemplarisch für Zeile 1 bis 3
    wert = Cells(i, 1).Value 'Exemplarisch für Spalte A - Also A1 bis A3
    zellwert = ""
    
    'In jeder Zelle werden alle Zeichen bearbeitet
    For k = 1 To Len(wert)
        z = Mid(wert, k, 1)
        If Not (Asc(z) > 47 And Asc(z) < 58) Then
            If z = dezimaltrennzeichen Then
                If Not Asc(Mid(wert, k + 1, 1)) > 47 And Asc(Mid(wert, k + 1, 1)) < 58 Then
                    z = ""
                End If
            Else
                z = ""
            End If
        End If
        zellwert = zellwert & z
    Next k
    
    Cells(i, 2).Value = CDbl(zellwert) 'Werte werden in B1 bis B3 geschrieben
Next i

End Sub

 

Partnerlinks

Relevante Artikel

Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.