Il problema è che VB usa un interprete SQL (SQLPrepare ODBC API) che non sempre ha la stessa sintassi di SQL server

prova con

conn.execute(stringaSQL,dbExecDirect)

dovrebbe passare la query all'ODBC senza interpretarla.