Ir ao conteúdo
  • Cadastre-se

vba - access 2013 - problema com variaveis


Posts recomendados

Pessoal, bom dia!

 

Sou novo na área de Access e VBA e estou tendo dificuldades com um código que aparentemente parece ser simples.

 

Estou fazendo um form básico de consulta de clientes, que até então seria mais para atender as necessidades do call center de onde trabalho, já que estamos fazendo modificações no WMS e etc.

 

Enfim...

 

Defini algumas variáveis publicas e algumas funções, logo depois fiz o código da consulta, porém quando fui testar apareceu o seguinte erro:

 

Erro em tempo de execução '91':

A variável do objeto ou a variável do bloco 'With' não foi definida.

 

Isso ocorre já nas primeiras linhas do meu código, que é este aqui: 

Option Compare Database
Public comando As String
Public banco As Database
Public dataset As Recordset
Function Conecta()
    Set banco = CurrentDb
End Function
Function valida_selecao()
Set dataset = banco.OpenRecordset(comando, dbOpenDynaset) <<<AO DEPURAR O ERRO OCORRE NESTA LINHA
End Function

 

Alguém consegue me ajudar? Estou parado nisso tem 2 dias.

 

Obrigado!

Link para o comentário
Compartilhar em outros sites

Basole, valeu pelo retorno!

 

Eu refiz todo o código, porém o erro aparece só que agora em outro lugar.

 

Está assim:

 

Option Compare Database
Dim Comando As String 
Dim banco As Database
Dim cn As ADODB.Connection
Dim dataset As ADODB.Recordset

Private Sub Form_Load()

    cn.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
    App.Path & "C:\Users\Gabriel\Documents\databasebvs.accdb" & _
    ";Persist Security Info=False"
    cn.CursorLocation = adUseClient
    cn.Open
    
    dataset.CursorLocation = adUseClient
    dataset.Open "Select * from TabBEV", cn, adOpenStatic, adLockOptimistic
    
    End Sub
    
    
Private Sub CmdConsultar_Click()
    
    If txtPedido <> "" Then
    Comando = "Select * from TabBEV where Pedido=" & txtPedido 
    
        If dataset.RecordCount <> 0 Then < ERRO 91 NESSA LINHA. VARIAVEL DO OBJ NÃO DEFINIDA.
        txtDatadopedido = dataset("Data de Emissão")
        txtDatadeentrega = dataset("Data de Entrega")
        txtCliente = dataset("Cliente")
        txtDescricao = dataset("Desc Tipo Pedido")
        txtTotaldacompra = dataset("Valor Final")
        txtNumerodopedido = dataset("N Pedido Cliente")
        txtNotafiscal = dataset("Nf")
        txtDatadaemissao = dataset("Nf Data")
        txtRastreamento = dataset("Rastreamento")
        txtEndereco = dataset("Endereço do Cliente")
        txtCidade = dataset("Cidade")
        txtEstado = dataset("Estado")
        txtFrete = dataset("Tipo Frete")
        txtStatus = dataset("STATUS SAC")
        txtPagamento = dataset("APROVADO?")
        CmdAlterar.Enabled = True
        CmdConsultar.Enabled = False
        Else 'caso não tenha sido encontrado nenhum registro
            MsgBox ("Não foi encontrado nenhum pedido com o código informado!"), vbInformation + vbOKOnly, "Nenhum Registro"
        End If
    Else
        MsgBox ("Necessário informar o número de pedido para efetuar a consulta!"), vbInformation + vbOKOnly, "Pedido Necessário!"
        End If
End Sub


 

Consegue me ajudar? Valeu!

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...