Originariamente inviato da Shagrat
gli apici non ci vanno...e devi fare il controllo che il campo sia presente, supponendo che i campi che possono essere vuoti siano solo quei tre farei così:

codice:
if IsNull(ACQUA) or ACQUA="" then 
  ACQUA = null
end if
if IsNull(NUMERO) or NUMERO="" then 
  NUMERO = null
end if
if IsNull(PCBW) or PCWB="" then 
  PCWB = null
end if


SQL=""
SQL = SQL &"UPDATE tbl set "
SQL = SQL &"COSTRUTTORE='"&COSTRUTTORE&"',"
SQL = SQL &"MATRICOLA_COSTRUTTORE='"&MATRICOLA_COSTRUTTORE&"'  ,"
SQL = SQL &"ANNO_COSTRUZIONE='"&ANNO_COSTRUZIONE&"' ,"
SQL = SQL &"DATA='"&DATA&"'"
SQL = SQL &",ACQUA="&ACQUA
SQL = SQL &",NUMERO="&NUMERO
SQL = SQL &",PCBW="&PCBW

SQL= SQL &" WHERE ID = "&COD
Grazie, ma restituisce:

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nell'istruzione UPDATE.

code:
codice:
if IsNull(ACQUA) or ACQUA="" then 
  ACQUA = null
end if
if IsNull(NUMERO) or NUMERO="" then 
  NUMERO = null
end if
if IsNull(PCBW) or PCWB="" then 
  PCWB = null
end if


SQL=""
SQL = SQL &"UPDATE tbl set "
SQL = SQL &"COSTRUTTORE='"&COSTRUTTORE&"',"
SQL = SQL &"MATRICOLA_COSTRUTTORE='"&MATRICOLA_COSTRUTTORE&"'  ,"
SQL = SQL &"ANNO_COSTRUZIONE='"&ANNO_COSTRUZIONE&"' ,"
SQL = SQL &"DATA='"&DATA&"'"
SQL = SQL &",ACQUA="&ACQUA
SQL = SQL &",NUMERO="&NUMERO
SQL = SQL &",PCBW="&PCBW

SQL= SQL &" WHERE ID = "&COD