Rex,
>Any ideas on how I could position the preview window to open on the page with the highlighted row?
None that's going to guarantee success, other than making that row the only row in the cursor *bg*
If your report is absolutely linear (no stretching fields) you should be able to calculate what page the highlited row would occur on. And use Rich's keyboarding solution.
If you have indeterminate row heights (rows per page != constant) you could get them close via keyboarding and use a calculated field that was an down or up arrow depending on recno() ie
iif( recno() < gnRecNo, DownArrow, iif( recno() > gnRecno, UpArrow, "" ) ).
Is your report so complex that you just can't spit it out as HTML and use a name target to jump to that location when you display the result in a browser?