Garbage data, cijfers eruit halen

Voorbeeldje, tijdens het importeren van de gegevens is iets fout gegaan. Nu zit je met de gebakken peren. In kolom A allemaal abracadabra. Kortom: garbage data. Oftewel, verprutste gegevens.

Je wilt alleen de cijfers eruit halen.

Code als volgt invoegen:

1. Kopieer de code
2. Open een nieuwe werkmap
3. Druk op de toetscombinatie ALT + F11 om de Visual Basic Editor te openen
4. Druk op de toetscombinatie ALT + N om het menu Invoegen te openen
5. Druk op M om een standaard module in te voegen
6. Daar waar de cursor knippert voeg je de code in middels Ctrl + V
7. Ga terug naar het Excel werkblad en selecteer cel B2 en type =Cijfers(A2)
8. Formule doorvoeren naar beneden

Function Cijfers(ByVal strVuilnis As String, Optional Extra As Boolean) As String
  Dim lngX As Long
  For lngX = 1 To Len(strVuilnis)
    If Mid(strVuilnis, lngX, 1) Like "[!0-9]" Then Mid(strVuilnis, lngX) = " "
  Next
  strVuilnis = Application.Trim(strVuilnis)
  If Len(Replace(strVuilnis, " ", "")) < 12 Then
    If Not Extra Then Cijfers = Replace(strVuilnis, " ", "")
  Else
    If Extra Then
      Cijfers = Mid(strVuilnis, InStrRev(strVuilnis, " ") + 1)
    Else
      Cijfers = Replace(Left(strVuilnis, InStrRev(strVuilnis, " ")), " ", "")
    End If
  End If
End Function

Een andere doortrapte methode is:

Function Alleen_Cijfers(strTekst As String) As String
With CreateObject("vbscript.regexp")
    .Pattern = "\D"
    .Global = True
    Alleen_Cijfers = .Replace(strTekst, "")
End With
End Function

Selecteer cel B2 en type =Alleen_Cijfers(A2)

Leave a Reply

Your email address will not be published. Required fields are marked *