Усеченные ведущие нули при использовании UDF - PullRequest
0 голосов
/ 15 января 2020

Я пытаюсь разделить текст из чисел внутри идентификатора (т. Е. TEXT008758, TEXT65647095, TEXT065, TEXT0000000047398473 и т. Д. c ..), длина которых варьируется - здесь нет смысла или причины. Я написал приведенный ниже код UDF, чтобы извлечь числа из текста, который работает отлично.

Проблема: начальные нули продолжают обрезаться от идентификатора, когда я выполняю UDF. Мне нужны ведущие фанаты, поскольку они являются частью соглашения об удостоверении личности. Я не уверен, будет ли процесс Sub более эффективным для преобразования его в текстовый формат и сохранения начальных нулей или чего-либо еще. Получить .csv или .txt не вариант, поэтому мне интересно, какие альтернативы вы можете предложить своим коллегам-волшебникам. Я - пользователь python, поэтому погружение в мир VBA для работы стало процессом обучения. вздох

Option Explicit
Public Function NumSplit(ByVal x As String, LeaveNums As Boolean) As Variant
Dim y As String, z As String, n As Long
    For n = 1 To Len(x)
        y = Mid(x, n, 1)
        If LeaveNums = False Then
            If y Like "[A-Za-z ]" Then z = z & y
        Else
            If y Like "[0-9 ]" Then z = z & y
        End If
    Next n
NumSplit = Trim(z)

End Function

Заранее спасибо!

...