InStr does not 'need' a starting position, it will default to 1.

I suspect that the invokation of the LoadString Function is failing. You should not 'Call" API Functions as they all return codes to indicate success or failure. Replace Call LoadString....... with lngReturn = LoadString..... where lngReturn is defined a Long. In the case of LoadSting lngReturn will hold the numbr of characters copied to stBuff. If that is zero you can use Err.LastDLLError to determine the cause of the error.