in reply to Word tables, OLE, perl, and me.

If I remember well (from my Visual Basic (for Applications) days, long long ago), there were some functions in the Word API to move a cursor on a character, word, line, paragraph, ... basis. Of course I cannot remember which function it was (the memory is the first thing to go :-( ), but I think you have to look in that direction. Probably something like "Move" or "MoveUp" with a smattering of parameters and constants to indicate how far you want to move. Try the help function in the Word VB editor.

CountZero

A program should be light and agile, its subroutines connected like a string of pearls. The spirit and intent of the program should be retained throughout. There should be neither too little or too much, neither needless loops nor useless variables, neither lack of structure nor overwhelming rigidity." - The Tao of Programming, 4.1 - Geoffrey James