VBA, MS Access MS Access в примерах

Нормализация строки : Значения типа "ПЕТРоВ" или "пеТроВ" в "Петров"

Public Function NormalString(vVal As Variant) As Variant
''Нормализация строки : Значения "ПЕТРоВ" или "пеТроВ" - будут преобразованы в "Петров"
'Для исправления ввода Имён, Фамилий (в т.ч. и двойных: морозов-пупкин в Морозов-Пупкин)
'--------------------------------------------------------------------------
'Print NormalString("ВАСЯ ПЕТРОВ")
'Print NormalString("морозов-пупкин")
'--------------------------------------------------------------------------
On Error GoTo NormalString_Err
Dim vRes As Variant
    If InStr(1, vVal, "-") > 0 Then
        vRes = Replace(vVal, "-", " - ")
        vRes = StrConv(vRes, 3)
        NormalString = Replace(vRes, " - ", "-")
    Else
        NormalString = StrConv(vVal, 3) '3 = vbProperCase
    End If

NormalString_End:
    On Error Resume Next
    Exit Function

NormalString_Err:
    NormalString = vVal 'Null
    MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure NormalString", vbCritical
    Err.Clear
    Resume NormalString_End
End Function



Назад ToTop
L.E. 05.05.2023
Рейтинг@Mail.ru