MaximoAccess

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

Obrigado

Administração do MaximoAccess

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

    Deletar registros de uma tabela

    Compartilhe
    avatar
    rlauro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 27/06/2014

    Deletar registros de uma tabela

    Mensagem  rlauro em 13/9/2016, 04:08

    Prezados Instrutores deste forum, estou aprendendo access e estou com um problema para deletar registros em uma tabela. vou Detalhar para ficar mais compreensivel.
    Tenho uma tabela chamada tbl_Lançamento , esta tabela tem vários campos e um deles e o campo PREFIXO que é texto
    Criei outra tabela chamada tbl_IncluiPrefixo com os campos ID Numeração automática e outro como nome Prefixo também texto
    Criei um Formulário Frm_IncluiExcluiPrefixos com uma caixa de Combinação onde mostra os dados da tabela tbl_IncluiPrefixos
    Dei o nome para a caixa de combinação Cc_ExPrefixo
    Que eu gostaria e que quando eu selecionasse no Formulário ExcluiPrefixos por exemplo o Prefixo 2725 via código VBA, ele fosse excluído todos os registros da tbl_Lançamento onde apareça o 2725 apagando toda a linha.

    Na tabela tbl_Lançamento inclui um campo codigoPrefixo para fazer o relacionamento com a tabela tbl_IncluiPrefixo

    Bha se puderem me ajudar, já gastei algumas horas e sem resultado.
    avatar
    Cláudio Machado
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1402
    Registrado : 17/03/2011

    Re: Deletar registros de uma tabela

    Mensagem  Cláudio Machado em 13/9/2016, 15:08

    Bom dia amigo.

    No evento após atualizar da sua Combo

    Tente isso:

    Código:

    If MsgBox("Confirma a Exclusão do Prefixo Nº: " &  PREFIXO  & "? & Vbcrlf & "Não há retorno.", vbYesNo + vbQuestion, "Confirma Exclusão") = vbYes Then
        Dim sql As String
        DoCmd.SetWarnings False 'Omite Aviso de execução
        sql = "DELETE * FROM tbl_Lançamento  WHERE PREFIXO = " & me.Cc_ExPrefixo.Column(1) 'ALTERE O NÚMERO DA COLUNA PARA A COLUNA ONDE ESTÁ O PREFIXO NA SUA COMBO
        DoCmd.RunSQL sql 'Executa consulta
        MsgBox "Prefixo Excluido com Sucesso.", vbInformation, "Informando"
    Else
        MsgBox "Prefixo não foi excluido.", vbInformation, "Informando"
        DoCmd.CancelEvent
    End If


    Saudações


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  [Você precisa estar registrado e conectado para ver este link.].
    Não esqueça de clicar no Joinha [Você precisa estar registrado e conectado para ver esta imagem.] para agradecer a dica que solucionou seu problema.
    avatar
    rlauro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 27/06/2014

    Deletar

    Mensagem  rlauro em 14/9/2016, 21:26

    Prezado amigo, fiz exatamente como o exemplo que me mandou, mas acho que não estou sabendo fazer a consulta exclusão. Na tbl_Lançamentos tenho os seguintes campos ID_Lanç, IDMotorista da tbl_Motoristas, IDPrefixo da tbl_Prefixo = Numero, Prefixo,Data,Mes,Ano, e outros mais. Vou lhe enviar o arquivo para dar uma olhada se possivel OK.
    avatar
    rlauro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 27/06/2014

    Deletar Registros

    Mensagem  rlauro em 14/9/2016, 23:09

    Postei antes mas não foi o arquivo.
    Anexos
    Taxi.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (952 Kb) Baixado 2 vez(es)
    avatar
    Cláudio Machado
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1402
    Registrado : 17/03/2011

    Re: Deletar registros de uma tabela

    Mensagem  Cláudio Machado em 15/9/2016, 16:02

    Bom dia.
    Modifique o tipo de Dados do campo Prefixo na sua tabela tbl_Lançamento para Número ao invés de texto, já que você só usa número nos seus prefixos.
    Inclua o código abaixo no Evento Após atualizar da sua combo CcExcluiPrefixo


    Código:

    Dim var_Prefixo

    var_Prefixo = CcExcluiPrefixo.Column(1) 'ALTERE O NÚMERO DA COLUNA PARA A COLUNA ONDE ESTÁ O PREFIXO NA SUA COMBO

    If MsgBox("Confirma a Exclusão do Prefixo Nº: " & CcExcluiPrefixo.Column(1) & "?" & vbCrLf & "Não há retorno.", vbYesNo + vbQuestion, "Confirma Exclusão") = vbYes Then
        Dim sql As String
        DoCmd.SetWarnings False 'Omite Aviso de execução
        sql = "DELETE * FROM tbl_Lançamento  WHERE Prefixo = " & var_Prefixo
        DoCmd.RunSQL sql 'Executa consulta
        MsgBox "Prefixo Excluido com Sucesso.", vbInformation, "Informando"
    Else
        MsgBox "Prefixo não foi excluido.", vbInformation, "Informando"
        DoCmd.CancelEvent
    End If

    Teste e retorne.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  [Você precisa estar registrado e conectado para ver este link.].
    Não esqueça de clicar no Joinha [Você precisa estar registrado e conectado para ver esta imagem.] para agradecer a dica que solucionou seu problema.
    avatar
    rlauro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 27/06/2014

    Deletar Registros

    Mensagem  rlauro em 15/9/2016, 17:27

    Prezado amigo, fiz cfe., o amigo detalhou, funcional, troquei o para numero o Prefixo, na tbl_Lançamento e na tbl_Prefixo
    So que agora esta acontecendo o seguinte, exclui a tabela Lançamento da consulta e inclui novamente para visualizar o campo Prefixo numero.
    Agora se visualizar a tbl_Lançamento ou a consulta esta colocando o ID e não o numero do prefixo. Pois a Caixa de combinação no Form_LançFeria foi
    colocado os campos da tabela Prefixo.
    Outra coisa quando eu deleto o prefixo cfe., sua instrução ele executa na tabela Lançamento e Cc_Consulta, so que não apaga na tbl_Prefixo, gostaria que apagasse também nesta tabela. Se puder me ajuda e não abusando da sua bondade, e que sou novo no access e estou aprendendo aos poucos.
    Mais uma vez obrigado.
    avatar
    Cláudio Machado
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1402
    Registrado : 17/03/2011

    Re: Deletar registros de uma tabela

    Mensagem  Cláudio Machado em 15/9/2016, 23:07

    Bem deixa eu ver se entendi.
    Quando você quiser excluir um Prefixo, você quer que o sistema exclua o registro das tabelas: tbl_Lançamento e tbl_Prefixos ? É isso mesmo?

    Mas e se no futuro você quiser consultar informações sobre eles? Como vai fazer? Excluindo não vai haver nenhuma informação destes registros pra nada.

    Veja se é isso que quer que o sistema faça conforme o anexo.
    Anexos
    Taxi_ALT.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (659 Kb) Baixado 10 vez(es)


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  [Você precisa estar registrado e conectado para ver este link.].
    Não esqueça de clicar no Joinha [Você precisa estar registrado e conectado para ver esta imagem.] para agradecer a dica que solucionou seu problema.
    avatar
    rlauro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 27/06/2014

    Excluir Registro

    Mensagem  rlauro em 19/9/2016, 12:06

    É exatamente isso Professor, um breve relato, tenho um táxi em PAlegre, e estou fazendo este programa para Lançar as ferias diaria e noturna, depois vou incrementar os relatórios. Porque deletar, e que posso alugar uma placa, quando desfazer o contrato desta placa, não há necessidade de manter estes registro no bco. de dados.
    Testei e esta funcionando bem. só que quando você escolhe o registro para excluir ele exclui se no formulário se abrir a combo apos excluir mostra
    #excluido tem como não mostrar esta mensagem dentro da combo. se fechar o form e abrir novamente não mostra. acho que teria que ter um comando apos excluir atualizar a combo so que não sei fazer isso. aguardo resposta, podes ver no mesmo arquivo.
    avatar
    Cláudio Machado
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1402
    Registrado : 17/03/2011

    Re: Deletar registros de uma tabela

    Mensagem  Cláudio Machado em 19/9/2016, 15:27

    Bom dia.
    Na sua combo, acrescente esta linha em Vermelho abaixo da mensagem:

    MsgBox "Prefixo Excluido com Sucesso.", vbInformation, "Informando"
    Me.CcExcluiPrefixo.Requery

    Teste e retorne
    Saudações


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  [Você precisa estar registrado e conectado para ver este link.].
    Não esqueça de clicar no Joinha [Você precisa estar registrado e conectado para ver esta imagem.] para agradecer a dica que solucionou seu problema.
    avatar
    rlauro
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 27/06/2014

    Deletar Registros

    Mensagem  rlauro em 3/10/2016, 12:52

    Prezado Professor mais uma vez obrigado pela ajuda, esta funcionando, mas ainda tenho que ajustar alguns detalhes, oportunamente volto a postar outras dificuldades quanto a este tópico.
    avatar
    Cláudio Machado
    VIP
    VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1402
    Registrado : 17/03/2011

    Re: Deletar registros de uma tabela

    Mensagem  Cláudio Machado em 3/10/2016, 14:17

    Bom dia.
    Ok, ficamos no aguardo.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  [Você precisa estar registrado e conectado para ver este link.].
    Não esqueça de clicar no Joinha [Você precisa estar registrado e conectado para ver esta imagem.] para agradecer a dica que solucionou seu problema.

      Data/hora atual: 18/10/2018, 15:18