Как известно SAP критически относится к введенным данным, почтовый индекс не исключение. Проблема возникает, к примеру, если SAP ждет 5 значный почтовый индекс "00111", но что будет если такой индекс ввести в таблицу Excel... правильно, он откинет нули спереди так-как посчитает его числом и мы получим "111". Как избежать такого при вставке такого индекса в SAP, пишем функцию:

Function indNorm(ByVal txt As String, Optional l As Integer = 5)
    If Len(txt) < l Then
        Do While Len(txt) <> l
         txt = "0" & txt
        Loop
    End If
    indNorm = txt
End Function

Данная функция вставит нужное количество нулей согласно нужной нам длине (переменная "l", по умолчанию = 5)

Проверяем:

Sub tst()

	Dim indExx As String
	
        indExx = "111"

	indExx = indNorm(indExx, 5)
	
	MsgBox indExx
	
End Sub
Add comment

powered by social2s