Nadya (and Mike),
From what I gather from the code (and from other threads on this subject) one of the things you're trying to accomplish here is to speed up the routine. One thing that catches my eye is the calling (unnecessarily) of some functions. For example, a number times the CHR(13) + CHR(10) is called. Assign the characters to a variable, and reference the variable instead. The same applies to CHR(13), SPACE(1), CHR(254). Each time you reference the function you incur additional processing overhead. When you assign them to variables, you incur this only once.
You also might want to look at the Foxtools functions Words() and WordNum() for parsing the strings.
George
Ubi caritas et amor, deus ibi est