O exemplo que lhe vou dar, utilizo no access mesmo, mas como utiliza ado, no VB, é rigorosamente o mesmo, é só adaptar:
Public Function executaquery()
'cria novo comando
Set cmd = New Command
cmd.ActiveConnection = dbDados.Connection
'utiliza uma query existente
cmd.CommandText = "[qRECIBOS_PARA_PRESTACAO_update]"
'cria os parametros para o comando
cmd.Parameters.Append cmd.CreateParameter("compa", adVarChar, adParamInput, 1)
cmd.Parameters.Append cmd.CreateParameter("MES", adVarChar, adParamInput, 1)
cmd.Parameters.Append cmd.CreateParameter("ANO", adVarChar, adParamInput, 4)
cmd.Parameters.Append cmd.CreateParameter("datap", adDate, adParamInput)
cmd.Parameters("compa") = 1
cmd.Parameters("MES") = 1
cmd.Parameters("ANO") = 2004
cmd.Parameters("datap") = Date
cmd.Execute
'exclui os parametros alocados
cmd.Parameters.Delete "compa"
cmd.Parameters.Delete "MES"
cmd.Parameters.Delete "ANO"
cmd.Parameters.Delete "datap"
'limpa o comando da memoria
Set cmd = Nothing
MsgBox "Processo Terminado"
End Function