'******************************************************************************* 'Description : Pads a number with zeroes on the left, according to the expected maximum length of the numbers in the list. ' 'Purpose : To keep a number list sorted properly, as with a file list (001, 002,..., 010, and not 1, 10, 11,..., 2, 20). ' 'Arguments : intCurrentNum (the current number to be padded) 'intMaxNumInList (the top number in the list) 'Note: The arguments are always taken in absolute values 'Returns : The padded intCurrentNum (for example, If 1 and 9999 are sent to the function, the result will be 0001) ' '******************************************************************************* Public Function PadNumber(ByVal intCurrentNum, ByVal intMaxNumInList) 'Validates the arguments - if invalid then it returns the value as is If (Not IsNumeric(intCurrentNum) Or Not IsNumeric(intMaxNumInList)) Then PadNumber = intCurrentNum Exit Function End If If (Abs(intCurrentNum) >= Abs(intMaxNumInList)) Then PadNumber = intCurrentNum Exit Function End If PadNumber = String(len(CStr(Abs(intMaxNumInList)))-len(CStr(Abs(intCurrentNum))), "0") _ & CStr(Abs(intCurrentNum)) End Function '******************************************************************************* 'Msgbox PadNumber(4, 34567) 'Returns 00004 'Msgbox PadNumber(-4, 34567) 'Returns 00004 'Msgbox PadNumber(4, -34567) 'Returns 00004 'Msgbox PadNumber(34567, 4) 'Returns 34567 'Msgbox PadNumber(4, 9) 'Returns 4 'Msgbox PadNumber("Hello", 9999) 'Returns Hello
转载于:https://www.cnblogs.com/yongfeiuall/archive/2013/01/11/4134201.html