Are you using the change event of the worksheet? That could trigger after it
has set the listindex correctly.
Are you using AutoFilter, ShowAll, or ScrollArea. These can have weird reset
effects. I am struggling with them on my project at the moment and finding
variables get reset unexpectedly.
When you step through with F8 does the macro terminate so the VBE comes out of
break(debug) mode. In my project it was jumping back in because of the change
event.
Of course this may not help except to reassure you that you are not the only
Excel programmer with problems.