This happens when the code crashes? Or just out of the blue?
Some of my variables will loose assignment when I stop the code, the code errors out, etc.
Where are the values being assigned? I suspect the assignment is being done in Workbook_Open, or the assignment can be traced back to _Open.
I understand if the variables must be assigned early on. You may just need to have the reassignment code (in my case, GetSetting is involved) be called again in Userform_Initialize.