Just done some googling on this and the problem is common.
The workaround, which I've just confirmed is not to use Me as the object but to reference the form directly.
So in the current event you can do..
dim frm as form
set frm = forms!thisformnamehere
if frm.fieldname = "yyy" then
frm.buttonname.visible = true
else
frm.buttonname.visible = false
end