'' (文字列固定長編集用)文字詰方向 Public Enum Enum_EDITFIXSTRING_DIRECTION EDITFIXSTRING_DIRECTION_LEFT ''' 左詰 EDITFIXSTRING_DIRECTION_RIGHT ''' 右詰 End Enum ' @(f) ' ' 機能 : 文字列固定長編集 ' ' 返り値 : 編集後の文字列 ' ' 引き数 : ARG1 - 文字列 ' ARG2 - 編集後の文字長 ... ASCIIでのバイト長 ' ARG3 - 文字詰方向 ... "R" - 右詰, 左記以外 - 左詰(規定値) ' ARG4 - 付加する文字 ... 規定値 " " ' ' 機能説明 : 文字列を与えられた文字長に左詰または右詰し、 ' 残りの文字数を付加文字で埋める。 ' ' 備考 : ' Public Function pEditFixString(ByVal varValue As Variant, _ ByVal intLength As Integer, _ Optional ByVal enmDirection As Enum_EDITFIXSTRING_DIRECTION _ = EDITFIXSTRING_DIRECTION_LEFT, _ Optional ByVal strFillChar As String = " ") As String Dim strWk As String Dim intWkLen As Integer strWk = pNz(varValue, ""): intWkLen = pAsciiLenB(strWk) If intWkLen < intLength Then If enmDirection = EDITFIXSTRING_DIRECTION_RIGHT Then pEditFixString = _ pAsciiRightB(String(intLength, strFillChar) & strWk, _ intLength) Else pEditFixString = _ pAsciiLeftB(strWk & String(intLength, strFillChar), _ intLength) End If ElseIf intWkLen = intLength Then pEditFixString = strWk Else If enmDirection = EDITFIXSTRING_DIRECTION_RIGHT Then pEditFixString = pAsciiRightB(strWk, intLength) Else pEditFixString = pAsciiLeftB(strWk, intLength) End If End If End Function ' @(f) ' ' 機能   : Nullの場合の値変更 ' ' 返り値 : 元の値が Null の時は 初期値 を返し、 ' Null以外の時は 元の値 を返す。 ' ' 引き数  : ARG1 - 元の値 ' ARG2 - 初期値(Nullの場合に返す値) ' ' 機能説明 : Null値の置き換え。 ' ' 備考   : ' Public Function pNz(ByVal varOriginalValue As Variant, _ ByVal varInitValue As Variant) As Variant If IsNull(varOriginalValue) Then pNz = varInitValue Else pNz = varOriginalValue End If End Function