Function getNextPara(psCurrPara As String)
' examples
' ?getNextPara(""

' returns "A"
' ?getNextPara("A"

' returns "B"
' ?getNextPara("Z"

' returns "AA"
' ?getNextPara("AA"

' returns "AB"
' ?getNextPara("AZ"

' returns "AAA"
Dim sCurrPara As String
sCurrPara = UCase(Trim(psCurrPara))
If sCurrPara = "" Then
getNextPara = "A"
Exit Function
End If
Dim sRightChar As String
Dim iCharLen As Integer
Dim sRet As String
Dim sCharStr As String
sCharStr = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
sRightChar = Right(sCurrPara, 1)
iCharLen = Len(sCurrPara)
Select Case sRightChar
Case "Z"
sRet = Left(sCharStr, iCharLen) & "A"
Case Else
sRet = Left(sCurrPara, iCharLen - 1) & Chr(Asc(sRightChar) + 1)
End Select
getNextPara = sRet
End Function