Ok, il semble vraiment qu'ADODB s'attende à ce qu'une instruction de requête commence réellement par select .Par conséquent, une solution au problème pourrait être d'inclure l'instruction dans un select * from ( .... ) comme ça :
Dim sql As String
sql = "with w as (select 'foo' x from dual) select x from w"
' enclose the statement:
sql = "select * from (" & sql & ")"
rs.Open sql, cn