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


3 participantes

    Gravação de dados em tabelas através de um formulário

    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 21/2/2016, 20:48

    Pessoal, gostaria de ajuda com um banco de dados que estou criando.

    Tenho uma tabela com alguns cadastros que já importei de uma planilha em excel, mas criei um formulário que será utilizado para cadastrar os dadoes nesta mesma tabela, conforme os dados forem sendo atualizados. Mas o botão de salvar dados não consegue enxergar que já cadastrei os dados na tabela. Sempre que incluo um dados novo pelo formulário ele apenas substitui os dados que já havia gravado na primeira linha da tabela e caso cadastre um outro novo dado, ele substitui novamente e não passando para a segunda linha.
    Já tentei colocar uma programação em vba que vi no youtube, mas está dando erro.

    Alguém poderia me ajudar?
    Caso não tenha sido clara, me falem
    Nogaro513
    Nogaro513
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 482
    Registrado : 12/08/2013

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Nogaro513 21/2/2016, 20:58

    boa tarde Amanda, poste seu aplicativo ( Bd ) para que possamos te ajudar!
    Nogaro !
    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 22/2/2016, 11:23

    Nogaro513, obrigada por me responder!!
    Mas, posso explicar como está funcionando meu sistema, mas não posso enviar o arquivo, infelizmente! Pois é um banco de dados do trabalho e já tem todas as informações dos funcionários lá.

    Mas será que poderia explicar para ver se vc pode me ajudar??
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Cláudio Más 22/2/2016, 12:29

    Olá,

    Ao criar botões em formulários, o assistente de botão de comando facilita bastante o processo.
    Sugiro criar os botões disponíveis na categoria "Operações de registro", exceto talvez "Duplicar" e "Imprimir registro".
    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 23/2/2016, 14:13

    Bom dia Cláudio Más,

    Então, foi o que eu fiz, inclui o botão no formulário para salvar os dados e não está atualizando as informações na tabela.
    O que o programa está fazendo é incluindo apenas na primeira linha da tabela, se cadastro novos dados ele apenas substitui os dados em cima do que já havia cadastrado, não passando para a linha 2.

    Vi uma programação em vba para o Access no youtube para que o programa pegasse o último número cadastrado e somente somasse mais 1 para cadastrar na linha abaixo, mas não está funcionando. E não sei como fazer dessa forma.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Cláudio Más 23/2/2016, 14:29

    Bom dia Amanda,

    Você incluiu o botão "Adicionar novo registro"?
    Este botão força a entrada de dados em uma nova linha, preservando o registro atual.

    Então, sempre antes de começar a entrar novos dados, deve clicar nesse botão.
    Tentou assim?
    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 23/2/2016, 14:53

    Cláudio,

    Incluí sim...e mesmo clicando neste botão antes de inserir novos dados, os dados não são registrados na tabela.

    Se eu te enviar a programação em vba, você acha que consegue me ajudar a identificar o erro?
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Cláudio Más 23/2/2016, 14:59

    Talvez sim, pode enviar.
    Mas o problema pode não estar relacionado à programação vba.

    Já que não pode enviar o arquivo, uma opção é o acesso remoto (teamviewer), se não conseguir resolver pela programação.
    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 23/2/2016, 16:25

    Claudio, a programação é essa:

    Modulo

    Option Compare Database

    Public Comando As String 'variável onde serão colocados os comandos em SQL, como insert, update e select
    Public banco As Database 'variável que irá fazer a conexão entre a aplicação e o banco de dados
    Public dataset As Recordset 'variável onde serão passados comandos em SQL do tipo select, que vão preencher e colocar os dados em uma tabela específica na memória ram

    Function Conecta()
    Set banco = CurrentDb 'currentDb significa que o banco de dados utilizado é o do próprio access

    End Function

    Function valida_selecao()
    Set dataset = banco.OpenRecordset(Comando, dbOpenDynaset)

    End Function

    Formulário

    Option Compare Database
    Public NumCog As Integer 'variável que irá guardar o código gerado no método GerarCod
    Private Sub CmdCadastrar_Click()
    GerarCod 'chama a função criada
    Comando = "INSERT INTO TreinamentosRealizados (ID, Treinamento, Data Realizada, Matrícula, Validade) VALUES (" & NumCod & ", " & CmdTreinamento & ", " & CmdDataRealizada & ", " & CmdMatricula & ", " & CmdValidade & ")"
    banco.Execute (Comando) 'executar a função criada acima
    MsgBox ("Os dados foram cadastrados com sucesso!"), vbInformation + vbOKOnly, "Cadastro"
    End Sub

    Private Sub Form_Load()
    Conecta 'chama a função de conexão, já criada. Esta função precisa ser criada sempre que abre um formulário para realizar o cadastro de dados
    End Sub

    Sub GerarCod()
    Comando = "Select * from TreinamentosRealizados order by [ID]" 'seleciona os campos em ordem decrescente
    valida_selecao 'chama a função criada para executar o código acima
    If dataset.BOF = True Then
    NumCod = 1 'o primeiro código criado será igual a 1
    Else
    NumCod = dataset("ID") + 1 'pega o último código e adicona 1
    End If

    End Sub

    Sub Limpar()
    CmdTreinamento = Empty
    CmdDataRealizada = Empty
    CmdMatricula = Empty
    CmdValidade = Empty
    End Sub


    Cada hora que consigo ajustar um erro, aparece outro
    principalmente na função : NumCod = dataset("ID") + 1
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Cláudio Más 23/2/2016, 17:26

    Essa programação é a que você achou no youtube?
    Parece que se aplica a formulários não acoplados.

    Já tentou utilizar o assistente de formulário para criar um formulário baseado na tabela que importou do excel?
    Nesse caso, os botões que sugeri anteriormente deverão funcionar nesse novo formulário, sem necessidade da programação que enviou.
    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 23/2/2016, 17:45

    Já sim!
    Até criei um novo agora depois que você falou só para ter certeza.
    Mas continua dando o mesmo problema. O sistema atualiza somente na primeira linha e não na linha abaixo dos registros já feitos.

    Essa programação está associada ao botão de salvar registro, dentro do primeiro formulário que criei, pois queria que ele entendesse que era para pegar a última linha e acrescentar mais 1 e salvar na última msm.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Cláudio Más 23/2/2016, 18:12

    Amanda, desculpe mas chegou num ponto que só tendo acesso ao arquivo para tentar resolver.
    Pode ser algo até simples, mas sem ver o programa, pode levar muito tempo e não chegar a uma solução.
    avatar
    Amandalmeida
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 17
    Registrado : 01/12/2015

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Amandalmeida 25/2/2016, 16:05

    Claudio, de qualquer forma, obrigada!
    Estou vendo uma forma de conseguir enviar o sistema sem que tenham os dados cadastrados do jeito que está.
    Cláudio Más
    Cláudio Más
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1314
    Registrado : 21/01/2012

    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Cláudio Más 26/2/2016, 12:08

    Amanda,

    Faz uma cópia do sistema, e nessa cópia exclui todos os registros de todas as tabelas.

    Conteúdo patrocinado


    Gravação de dados em tabelas através de um formulário Empty Re: Gravação de dados em tabelas através de um formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/5/2024, 14:11