Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal, estou utilizando uma conexão ADODB no VBA para acessar um SQL Server. Até aí tudo bem, o problema é que estou colocando multiplas queries em uma String e executando ela, a estrutura dessa String query é +- assim:
--primeiro eu crio uma tabela temporária
declare @resultado table (id int UNIQUE, valor1 float, valor2 float, valor3 float, valor4 float, soma float)
insert into @resultado (valor1, id, soma)
Select [...] --insere na tabela temporaria alguns valores iniciaisUpdate @resultado [...]
Update @resultado [...]
Update @resultado [...]
Update @resultado [...]
Update @resultado [...]
--e no fim o que me inressa no vba é obter o resultado da query a seguir
select MAX(soma) as Max from @resultado
tudo isto está em uma String que eu mando executar na conexão utilizando
Dim cnt As ADODB.Connection
Dim rst As ADODB.Recordset
Set cnt = New ADODB.Connection
Set rst = New ADODB.Recordset
cnt.Open [...]
Set rst = cnt.Execute(query)
soma = rst![Max]
porém, quando executo isto, o resultado é o erro: "Item cannot be found in the collection corresponding to the requested name or ordinal".
Quando depurei, percebi que o rst não possui nenhum campo.
Alguém pode me ajudar a obter o resultado da query?
Carregando comentários...