MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Filtrar um registro na tabela e editá-lo

    avatar
    naiconmartins
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5
    Registrado : 02/02/2018

    [Resolvido]Filtrar um registro na tabela e editá-lo Empty [Resolvido]Filtrar um registro na tabela e editá-lo

    Mensagem  naiconmartins 24/2/2018, 21:42

    Pessoal, eu criei uma tabela chamada CadastroMateriaisObra onde ficam registrados os materiais e o saldo de estoque. Em seguida, criei um formulário para dar entrada e saída desses materiais no estoque. Até aí tudo bem. Meu problema está na hora de atualizar o registro da tabela. No formulário eu criei uma combobox que filtra o material  e insere o resultado nos demais campos. Porém, eu não estou sabendo criar o evento para salvar esse registro, uma vez que o access precisa:

    1) Abrir a tabela CadastroMateriaisObra;
    2) Filtrar o registro do código do material que foi inserido na combobox; e
    3) Atualizar o saldo deste registro.

    Eu não estou conseguindo filtrar o registro usado pela combobox txtCodigo para atualizá-lo. Já tentei usar Select Case mas mesmo assim ele só atualiza o primeiro registro como se só houvesse ele. Segue abaixo o código até onde consegui fazer:

    Dim db
    Dim rs

    Set db = CurrentDb()
       Set rs = db.OpenRecordset("CadastroMateriaisObra") 'Abre a tabela
     
       rs.Edit 'Edita o registro
           rs("Saldo") = Me.txtSaldo
     
           rs.Update

       rs.Close
       db.Close
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7956
    Registrado : 05/11/2009

    [Resolvido]Filtrar um registro na tabela e editá-lo Empty Re: [Resolvido]Filtrar um registro na tabela e editá-lo

    Mensagem  Alexandre Neves 25/2/2018, 10:17

    Bom dia e bem-vindo ao fórum
    Código:
    Dim rs as DAO.recordset

      Set rs = CurrentDb.OpenRecordset("SELECT * FROM CadastroMateriaisObra WHERE Codigo=" & txtCodigo ) 'Abre a tabela
     
      rs.Edit 'Edita o registro
          rs("Saldo") = Me.txtSaldo
     
          rs.Update

      rs.Close
      rs=nothing


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    naiconmartins
    Novato
    Novato

    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5
    Registrado : 02/02/2018

    [Resolvido]Filtrar um registro na tabela e editá-lo Empty Re: [Resolvido]Filtrar um registro na tabela e editá-lo

    Mensagem  naiconmartins 26/2/2018, 03:10

    Valeu, amigo!

    Eu consegui também usando outro código, porém achei o seu mais prático. Segue o que consegui:

    Dim mdbTAB As Database
    Dim tblTAB As Recordset

    Set mdbTAB = CurrentDb

    Set tblTAB = mdbTAB.OpenRecordset("CadastroMateriaisObra", dbOpenTable) 'Abre a Tabela

    tblTAB.Index = "PrimaryKey" 'Determina o indice

    tblTAB.Seek "=", Me.txtCodigo.Value 'Procura a chave
    If tblTAB.NoMatch Then
    MsgBox "Inexistente..."

    Guarda_D = tblTAB.Fields("Saldo").Value

    tblTAB.Edit 'Edita a tabela

    tblTAB.Fields("Saldo").Value = Me.txtSaldo.Value 'Transfere o saldo

    tblTAB.Update 'Atualiza a Tabela

    End If

    'Agora Atualizando o Estoque

    Set mdbTAB = CurrentDb 'Abre o Banco de Dados Estoque

    Set tblTAB = mdbTAB.OpenRecordset("CadastroMateriaisObra", dbOpenTable) 'Abre a tabela

    tblTAB.Index = "PrimaryKey" 'Determina o indice

    tblTAB.Seek "=", Me.txtCodigo.Value 'Procura a Chave

    tblTAB.Edit 'Edita a Tabela de Dados

    tblTAB.Fields("Saldo").Value = Me.txtSaldo.Value 'Transfere o saldo do estoque para a tabela

    tblTAB.Update 'Atualizando a Tabela

    MsgBox "Estoque atualizado!"

      Data/hora atual: 16/6/2021, 20:46