Ir ao conteúdo
  • Cadastre-se

Gabriel Tiago

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Reputação

0
  1. @Basole Consegui concluir o projeto, amigo! Porém obg pela ajuda!! Refiz o código com a ajuda do pessoal da área aqui da empresa.
  2. Pessoal, estou enfrentando um problema com o meu código VBA que fiz essa semana. Infelizmente parece que o RecordSet não funciona com o banco de dados em rede compartilhada. O código funciona perfeitamente em arquivo local, mas em rede ele nem se quer abre meu formulário. Os erros ocorrem nas definições de Recordset. Segue o código: Option Compare Database Dim iHide As Integer Dim Comando As String Dim ForeColor As Long Dim iBlink As Variant Dim banco As Database Dim cn As ADODB.Connection Dim dataset As ADODB.Recordset Private Sub cmdConsultar_Click() If IsNull(txtPedido) Or Len(txtPedido & vbNullString) = 0 Then txtPedido.SetFocus MsgBox "Por favor digite o número do Pedido", vbInformation + vbOKOnly, "Consulta" '<<<<<<< txtBlink.Value = "Por favor digite o número do Pedido" iBlink = 0 Me.TimerInterval = 400 limpar Else dataset.MoveFirst dataset.Find "[Pedido]='" & txtPedido & "'", , adSearchForward If dataset.EOF Then MsgBox "Pedido NÃO encontrado!", vbInformation + vbOKOnly, "Consulta" txtBlink.Value = "Pedido NÃO encontrado!" iBlink = 0 Me.TimerInterval = 400 txtPedido.SetFocus limpar Else MsgBox "Pedido encontrado!", vbInformation + vbOKOnly, "Consulta" txtBlink.Value = "Pedido encontrado!" iBlink = 0 Me.TimerInterval = 400 'ShowMeTheWay Me.txtDatadopedido.ControlSource = "Data de Emissão" Me.txtDatadeentrega.ControlSource = "Data de Entrega" Me.txtCliente.ControlSource = "Cliente" Me.txtDescricao.ControlSource = "Desc Tipo Pedido" Me.txtTotaldacompra.ControlSource = "Valor Final" Me.txtNumerodopedido.ControlSource = "N Pedido Cliente" Me.txtNotafiscal.ControlSource = "Nf" Me.txtDatadaemissao.ControlSource = "Nf Data" Me.txtRastreamento.ControlSource = "Rastreamento" Me.txtEndereco.ControlSource = "Endereço do Cliente" Me.txtCidade.ControlSource = "Cidade" Me.txtEstado.ControlSource = "Estado" Me.txtFrete.ControlSource = "Tipo Frete" Me.txtStatus.ControlSource = "STATUS SAC" Me.txtPagamento.ControlSource = "APROVADO?" Me.RecordSelectors = False Me.txtShowMeTheWay.TextAlign = 2 txtPedido.SetFocus If dataset.RecordCount > 0 Then ShowMeTheWay End If End If End Sub Private Sub cmdExit_Click() DoCmd.Close acForm, "FrmConsulta2", acSavePrompt End Sub Private Sub cmdFirst_Click() On Error Resume Next If Not (dataset.BOF) Then dataset.MoveFirst If dataset.RecordCount > 0 Then ShowMeTheWay End Sub Private Sub cmdLast_Click() On Error Resume Next dataset.MoveLast If dataset.RecordCount > 0 Then ShowMeTheWay End Sub Private Sub cmdNext_Click() On Error Resume Next dataset.MoveNext If dataset.EOF Then dataset.MovePrevious If dataset.RecordCount > 0 Then ShowMeTheWay End Sub Private Sub cmdPrevious_Click() On Error Resume Next dataset.MovePrevious If dataset.BOF Then dataset.MoveNext If dataset.RecordCount > 0 Then ShowMeTheWay End Sub Private Sub Form_Load() KeyPreview = True iHide = 0 iBlink = 0 Me.TimerInterval = 0 Set cn = New ADODB.Connection Set dataset = New ADODB.Recordset cn.Open ("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & "\\Cleber-sac\access\DATABASEBAHERVEST.accdb") dataset.Open "SELECT * FROM TabBEV", cn, adOpenKeyset, adLockOptimistic Set Form.Recordset = dataset '<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< End Sub Private Sub ShowMeTheWay() Dim Current As Long, total As Long Current = dataset.AbsolutePosition total = dataset.RecordCount txtShowMeTheWay = Current & "/" & total End Sub Private Sub Form_Timer() iHide = iHide + 1 iBlink = iBlink + 1 Select Case iHide Case Is = 1 txtKeyDown.Visible = True Case Is = 2 txtKeyDown.Visible = True Case Else txtKeyDown.Visible = False End Select Select Case iBlink Case Is = 1, 5, 9 txtBlink.Visible = True txtBlink.ForeColor = ForeColor Case Is = 2, 4, 6, 8 txtBlink.Visible = False Case Is = 3, 7 txtBlink.Visible = True ForeColor = vbRed txtBlink.ForeColor = ForeColor Case Else txtBlink.Visible = False Me.TimerInterval = 0 iBlink = 0 End Select End Sub
  3. @Basole Obrigado pela resposta. Porém ainda continua com erro 91 na mesma linha com o outro código Alguma outra ideia que possa ter? De qualquer forma obrigado por tentar ajudar!!
  4. 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!
  5. 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!

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...