Ich habe derzeit ein Makro, das eine Eingabe aus einer Zelle in einer Spalte nimmt, entfernt Text und Leerzeichen, verkürzt auf die letzten 13 Ziffern und gibt dann in nächste Spalte über.Ausführen verschiedener Funktionen auf Eingabe und dann Ausgabe an Zelle
Ich wurde ein wenig Code in einer vorherigen Frage angezeigt, die Regex verwendet, um den Text zu entfernen (ich hatte zuvor die Leerzeichen entfernt werden, ok). Ich bin mir jedoch nicht sicher, wie ich die Funktion ausführen und mit meinem aktuellen Code an die Zelle ausgeben kann.
Momentan ist alles, was es tut, auf 13 Stellen zu kürzen, also denke ich, dass die Funktion nicht korrekt ausgeführt/aufgerufen wird.
Aktuelle Makro ist:
Sub RemoveSpaces_Click()
i = 7
j = 7
Do While ActiveWorkbook.ActiveSheet.Cells(i, 1) <> ""
InputString = ActiveWorkbook.ActiveSheet.Cells(i, 1)
removeAlpha (InputString) ' <--- How to call this?
' Right() after removing to avoid text counting as length
InputString = Right(InputString, 13)
j = j + 1
' Output to second column to preserve original input
ActiveWorkbook.ActiveSheet.Cells(i, 2) = InputString
i = i + 1
Loop
End Sub
Function removeAlpha(strInput As String) As String
strInput = Replace(strInput, " ", "")
With CreateObject("vbscript.regexp")
.Pattern = "[A-Za-z]"
.Global = True
removeAlpha = .Replace(strInput, "")
End With
End Function
'InputString = removeAlpha (EingabeString)' –