This depends on how you're building your strings. for example, the guy in the other thread had his strings typed out and read them in from a file. If he wanted to align them, he'd do so manually.
If you were reading from two sources and putting them together, for example, read in the ID value from one place and the state name from another, you could easily alter the values. Example:
Let's say you always put the same number of spaces between the ID and the state (4?), and that you the maximum id value has 4 digits (as in the problem above). Currently, your solution is:
' assuming ReplaceSpaceWithChr160 is the function we created
' that replaces a hardcoded space with the ascii value of a
' non-breaking space, and it returns the string of chr(160) chars.
strListText = strID & ReplaceSpaceWithChr160(" ") & strState
To make sure that the same number of characters are always present in the ID value, we would use a Pad() function; in this case, we want extra characters to show up on the left, so we would use PadLeft():
' assuming ReplaceSpaceWithChr160 is the function we created
' that replaces a hardcoded space with the ascii value of a
' non-breaking space, and it returns the string of chr(160) chars.
strListText = strID.PadLeft(4, chr(160)) & ReplaceSpaceWithChr160(" ") & strState PadLeft takes total number of characters (4 in this case) and the character to pad with (chr(160) in this case).