USAR CONSULTAS SALVAS DENTRO DO ACCESS

RIOLEAL 12/09/2024 07:33:40
#503549
Alterado em 12/09/2024 07:36:45 Senhores,
Há anos não programo, mas surgiu a oportunidade de ganhar uma graninha com um projeto antigo de um amigo.

A única necessidade que preciso é lembrar como criar um código, em VBA no EXCEL, para usar acessar as consultas (INSERT INTO, SELECT, UPDATE) que estão pré-criadas dentro do Access.

A conexão com Access, já está fazendo, mas preciso do código para enviar a string SQL ou o comando SQL para o INSERT INTO que está criado dentro do Access.

Como falei, faz muitos anos que não programo e, na internet, não mostra como usar os chamados TRIGGERS ou consultas internas ou consultas embutidas (não lembro como se chamam.)

No Access, a consulta se chama INSERT_RESUMO. Quero acessar esta consulta, enviando, inclusive parâmetros, como valor de venda, quantidade vendida, enfim...

Obrigado.
RIOLEAL 16/09/2024 14:13:51
#503562
Senhores,
Após vasculhar meus arquivos antigos, consegui fazer um SELECT em um a Stored Procedure, do jeito que eu queria.
Segue meu código, caso ainda exista algum programador VBA com este problema:

Public DB2 As ADODB.Connection
Public RSt2 As ADODB.Recordset
Private objCommand As ADODB.Command
-------------------------------------------------------------------

Public Sub preencheCamposData()
Set DB2 = New ADODB.Connection
DB2.Open stringConexao ' String de conexão com o Access

Set objCommand = New ADODB.Command 'Setando uma nova instância

With objCommand
.ActiveConnection = DB2 'Setando e abrindo a conexão do objCommand
.CommandText = "SELECT_DISTINCT_DIA_RESUMO" 'Apontando para a Stored procedure que está lá no Access
.CommandType = adCmdStoredProc ' Afirmando que é uma Stored Procedure

Set RSt2 = .Execute 'Setando o RecordSet com o resultado do objCommand
End With

With frmDinheiro ' Nome do formulário
.cboResumoDe.Clear ' ComboBox
.cboResumoAte.Clear ' Outro ComboBox

While Not RSt2.EOF ' Loop no RecordSet enquanto houver resultados
.cboResumoDe.AddItem RSt2("mes").Value & "/" & RSt2("ano").Value ' "mes" e "ano" são os nomes das colunas que dei na query lá no access
.cboResumoAte.AddItem RSt2("mes").Value & "/" & RSt2("ano").Value

RSt2.MoveNext 'Mova para o próximo registro
Wend

.cboResumoDe.Value = Month(Now) & "/" & Year(Now) 'Seta o mês e o ano atual após realizar o trabalho anterior
.cboResumoAte.Value = Month(Now) & "/" & Year(Now) 'Seta o mês e o ano atual após realizar o trabalho anterior
End With

RSt2.Close ' Fecha o RecordSet
DB2.Close ' Fecha a conexão com Access
End Sub

Obrigado.
Tópico encerrado , respostas não são mais permitidas