ci credo che non funzia hai messo il where nel for...

codice:
sql = "UPDATE layout set stato='"&True&"', UserID='"&ID&"' WHERE" 
for i = 1 to n
if i>1 then sql=sql & " or"
sql = sql & " (X=" & X(i) & " AND Y=" & Y(i) & ")"
next

response.write sql
response.end
guarda se è così che deve venire la query perchè immagino che nel database x e y per lo stesso userid assumano diversi valori