Resolved - caught by On Error Resume
Apologies for wasting any time. I was caught out by the calling sub route having lots of On Error Goto and Resume Next. This set the Err value prior to calling WinSCP and I test for Err <> 0 and hence fell into this trap. Simplest fix in the world I set Err = 0 entering the WinSCP calling routine. A very large DOH !!!