Questa query va contro la logica SQL della INSERT:

codice:
sql="INSERT INTO calendario (a, b, ver, user) VALUES ("&var_a&", "&var_b&", "&ver&", '"&session("utente")&"') WHERE id="&id&""


La INSERT non presuppone una condizione di WHERE!!!

Così è la sintassi corretta:

codice:
sql="INSERT INTO calendario (a, b, ver, user) VALUES ("&var_a&", "&var_b&", "&ver&", '"&session("utente")&"')