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


+2
Uilson Brasil
Access365
6 participantes

    [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 2/3/2015, 20:24

    Olá pessoal,
    Como fazer para excluir somente um registro no formulário contínuo?

    Estou fazendo assim:

    Private Sub butDelete_Click()
    On Error Resume Next
    Dim I As String
    I = MsgBox("Deseja excluir esta entrada?", vbYesNo, "GEAP/MG")
    If I = vbYes Then
    DoCmd.RunSQL "DELETE * FROM Requisição WHERE CódigoS = '" & Me.txtCodConS.Value & "'"
    DoCmd.Requery
    MsgBox "Exclusão concluída.", vbInformation, ""
    End If
    End Sub

    Mas acontece que ele não exclue porque sempre lê sempre o primeiro CódigoS (ID)...
    Se tenho três registros, por exemplo, (ID's) 40, 41 e 42, ao clicar no excluir do registro 42, ele TENTA excluir sempre o 40 e nem consegue.

    Alguém pode me ajudar?

    Obrigado, Luz e Paz!
    Uilson Brasil
    Uilson Brasil
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1039
    Registrado : 23/04/2013

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Uilson Brasil 4/3/2015, 01:10

    Amigo,

    Utilizo deste código tanto para listagem como para formulários contínuos. Veja se consegue adaptar a sua necessidade.

    Código:
    If MsgBox("Confirma a exclusão do registro?", vbYesNo + vbDefaultButton1 + vbQuestion, "SCE v1.0") = vbYes Then
        DoCmd.SetWarnings False
        Dim DB As DAO.Database
        Set DB = CurrentDb()
        DB.Execute "DELETE * FROM VdaDetal WHERE ITEM = " & Cupom.Column(0)
        Set DB = Nothing
        DoCmd.SetWarnings True
        MsgBox "Exclusão realizada com sucesso.", vbInformation, "SIG v1.0"
        Recalc
    End If

    VdaDetal = tabela
    Item = Campo Chave


    .................................................................................
    ::: Uilson Brasil
    ::: Design in Microsoft Access
    scandinavo
    scandinavo
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1059
    Registrado : 11/11/2009

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  scandinavo 4/3/2015, 14:00

    Eu uso este

    No clicar do botão

    On Error GoTo Err_btExcluir

    If MsgBox("Confirma a exclusão do funcionario...." & vbCrLf & vbCrLf & Me![Funcionario], vbCritical + vbYesNo, "Confirmação") = vbNo Then Exit Sub
    DoCmd.SetWarnings False
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.SetWarnings True

    Exit Sub
    Err_btExcluir:
    Resume Next

    Atenção

    A linha que voce quer excluir tem que estar com o foco em qualquer campo.

    Boa sorte
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 5/3/2015, 19:56

    Obrigado gente, mas:

    Uilson
    Não excluir nenhum registro

    'If MsgBox("Confirma a exclusão do registro?", vbYesNo + vbDefaultButton1 + vbQuestion, "SCE v1.0") = vbYes Then
    'DoCmd.SetWarnings False
    'Dim DB As DAO.Database
    'Set DB = CurrentDb()
    'DB.Execute "DELETE * FROM Requisição WHERE ITEM = " & Me.txtCodConS.Value
    'Set DB = Nothing
    'DoCmd.SetWarnings True
    'MsgBox "Exclusão realizada com sucesso.", vbInformation, "SIG v1.0"
    'Recalc
    'End If
    ----------
    scandinavo
    Só deleta o primeiro (EX.: se entrar 40, 41, 42 e 43, ao tentar excluir o 42, é o 40 que é excluído)

    Luz e Paz
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2115
    Registrado : 13/04/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Fernando Bueno 5/3/2015, 20:08

    Boa tarde, veja esse exemplo:


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    [Resolvido]Delete (excluir) em formulário contínuo com VBA 16rzeq
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 6/3/2015, 14:39

    Obrigado Fernando!
    Vou fazer a adaptação...
    Retornarei depois.

    Luz e Paz!
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 6/3/2015, 15:30

    Obrigado, mas não funcionou na adaptação!

    Só pergunta sobre o mesmo registro e não exclue!
    Err_Delete:
       MsgBox "Você cancelou a operação", vbCritical, "Exclusão"

    === COMO FIZ ===

    On Error GoTo Err_Delete
    Dim numRecord As Integer
    'numRecord = InputBox("Informe o número do registro:", "Exclusão")
    numRecord = Me.txtCodConS.Value
    If MsgBox("Deseja excluir o registro " & numRecord & "?", vbQuestion + vbYesNo, "Sistema!") = vbYes Then
    Dim SQL As String
    DoCmd.SetWarnings False
    SQL = "DELETE * FROM TblProdutos WHERE Código = " & numRecord
    DoCmd.RunSQL SQL
    MsgBox "Operação realizada com sucesso!", vbInformation, "Exclusão"
    'DoCmd.Close
    'DoCmd.OpenForm "Produtos"
    Else
    Exit Sub
    End If
    Exit_Delete:
    Exit Sub
    Err_Delete:
    MsgBox "Você cancelou a operação", vbCritical, "Exclusão"
    Resume Exit_Delete
    ======

    Luz e Paz!
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 6/3/2015, 15:52

    Na verdade, o formulário contínuo anula toda informação sobre qual ID puxar para o delete,
    EU PRECISO que o botão "X" (excluir) fique na linha de cada registro!

    A idéia do Fernando é boa, mas requer digitação

    Se eu lançar seis registros: 10, 11, 12 ,13 ,14 e 15, ao tentar excluir o 13, será excluído o 10

    === Só exclue o PRIMEIRO ===

    DoCmd.SetWarnings False
    Dim numRecord As Integer
    Dim SQL As String
    numRecord = Me.txtCodConS.Value
    SQL = "DELETE * FROM Requisição WHERE CódigoS = " & numRecord
    DoCmd.RunSQL SQL
    DoCmd.Requery

    ======

    Trocando a linha do código VBA:
    SQL = "DELETE * FROM Requisição WHERE CódigoS = " & numRecord
    para:
    DoCmd.RunCommand acCmdDeleteRecord

    dá na mesma... rs

    Luz e Paz!
    Uilson Brasil
    Uilson Brasil
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1039
    Registrado : 23/04/2013

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Uilson Brasil 6/3/2015, 22:03

    Amigo,

    Se possível disponibilize seu projeto para podermos entender melhor e ajuda-lo.


    .................................................................................
    ::: Uilson Brasil
    ::: Design in Microsoft Access
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 6/3/2015, 22:08

    Valeu...

    É o mesmo (ORIGINAL): http://maximoaccess.forumeiros.com/download.forum?id=11947

    Luz e Paz!
    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

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Cláudio Más 8/3/2015, 14:11

    Caro Avelino, levei um susto após ler sua afirmação, sobre formulário continuo não enxergar um botão para cada linha.
    Tive que verificar e, ainda bem, confirmei que não vou precisar rever todos os meus programas... rsrs

    A não ser que eu tenha entendido errado o que você quis dizer.
    No meu teste, o botão está na seção detalhe do formulário contínuo.
    Parece que, no caso do autor do tópico, o botão está no cabeçalho.
    Aí sim, ao clicar no botão, o foco sairia do registro onde estava e  Me!txtCodCon vai passar a referenciar o primeiro registro do formulário.

    Então a solução pode ser simplificada usando o botão na seção detalhe.
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 8/3/2015, 15:42

    Olá pessoal... muito obrigado!

    Está dando certo com a idéia do Avelino.

    Estou tentando fazer com uma imagem em vez de
    caixa de texto.

    P.S.: Cláudio, o botão sempre esteve na seção detalhe. Obrigado

    Luz e Paz
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3900
    Registrado : 04/04/2010

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Avelino Sampaio 8/3/2015, 16:01

    Tem toda razão amigo Cláudio.  Falei bobagem.  A questão era que ele usava uma imagem e não um botão e não me atentei para isso.

    Sucesso!


    Última edição por Avelino Sampaio em 8/3/2015, 17:34, editado 1 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Access365
    Access365
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Access365 8/3/2015, 16:55

    Ok... entendi!
    Botão em vez de imagem.

    Agora deu certo... Obrigado a todos pela boa vontade.

    Luz e Paz!

    Conteúdo patrocinado


    [Resolvido]Delete (excluir) em formulário contínuo com VBA Empty Re: [Resolvido]Delete (excluir) em formulário contínuo com VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 20:27