Вот еще одна пользовательская функция, которая будет возвращать все цифры после определенной строки (префикс).  В аргументах вы указываете строку для обработки и префикс для использования.  Вы также можете указать, должен ли префикс быть чувствительным к регистру.  По умолчанию он НЕ учитывает регистр, но это легко изменить.
UDF использует регулярные выражения для обработки текста.  Сначала мы удаляем все, вплоть до префикса.  Затем мы удаляем все не-цифры в остатке.
===================================
Option Explicit
Function DigitsAfter(sInput, sPrefix, Optional MatchCase As Boolean = False) As String
    Dim re As Object
    Dim S As String
    Dim sPatPrefix As String
    Const sPat As String = "\D"
'Intialize Regex engine
Set re = CreateObject("vbscript.regexp")
With re
    .Global = True
    .ignorecase = Not MatchCase
End With
'Generate the digit prefix
re.Pattern = "(.)"
sPatPrefix = ".*" & re.Replace(sPrefix, "\$1")
'Remove characters up to and including the prefix
re.Pattern = sPatPrefix
    If re.test(sInput) = False Then
'Exit if prefix not in string
        DigitsAfter = "Digit Prefix not in String"
        Exit Function
'now remove all the non-digits that are left
    Else
        S = re.Replace(sInput, "")
        re.Pattern = sPat
        DigitsAfter = re.Replace(S, "")
    End If
End Function
=====================================
Вот короткая процедура, показывающая, как ее можно использовать в большем макросе:
======================================
Option Explicit
Sub TestDigitFunction()
    Const S As String = "abc12x97J*24AAA123"
    MsgBox S & vbLf & DigitsAfter(S, "J*")
End Sub
======================================