Vídeo recomendado
https://youtu.be/diWPPPhW-9E

[RESOLVIDO]excluir varios cadastros ao mesmo tempo - listview

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
themusicgospel
Colaborador
Colaborador
Mensagens: 12
Registrado em: Ter Ago 23, 2011 11:07 pm

[RESOLVIDO]excluir varios cadastros ao mesmo tempo - listview

Mensagem por themusicgospel »

SISTEMA DE CADASTRO (1).zip
(590.37 KiB) Baixado 247 vezes
Boa noite caros amigos.
Fiz um sistema de cadastro no Excel Utilizando VBA e estou com o seguinte problema:
Gostaria de saber como posso excluir varios clientes ao mesmo tempo, apenas marcando na checkbox da listview e excutando o comando para excluir..

Atualmente so consigo excluir apos clicar no cliente, ai os dados sao lançados nas textbox, e depois executo o comando para excluir.

Segue o comando que uso para excluir e tbm estou enviando a planilha, quem puder me ajudar agradeço bastante, pois so falta isso para concluir meu projeto e evoluir no meu conhecimento em VBA.



Dim Linha As Long
Dim ID As String
Linha = 2
ID = txt_id
Plan4.Activate
Do Until Plan4.Cells(Linha, 1) = ""
'condição para localizar o código
If Plan4.Cells(Linha, 1) = ID Then
Plan4.Cells(Linha, 1).Select
Dim Resposta As String 'cria a variável resposta
Resposta = MsgBox("O registro será excluído. Confirma a exclusão?", vbYesNo + vbDefaultButton2, Soft) 'cria a mensagem para determinar qual ação será executada
If Resposta = vbYes Then ' se a resposta for sim então
'comando para deletar toda a linha
ActiveCell.Rows("1:1").EntireRow.Select
Selection.Delete Shift:=xlUp
ActiveCell.Select
'limpa todos os campos do formulário
MsgBox "Dados excluídos com sucesso!", vbInformation, "SISTEMA INFORMA"
Unload Me
frmMenu.Show
Else
End If
End If
Linha = Linha + 1
Loop
Editado pela última vez por themusicgospel em Sex Fev 23, 2018 9:37 am, em um total de 1 vez.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


sandrojrs
Colaborador
Colaborador
Mensagens: 38
Registrado em: Seg Fev 19, 2018 5:32 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por sandrojrs »

ja tentou utilizar o listview multi select


sandrojrs
Colaborador
Colaborador
Mensagens: 38
Registrado em: Seg Fev 19, 2018 5:32 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por sandrojrs »

amigo dei uma olhada na sua planilha, está muito boa o nível de personalização, só não entendi por que tem uma parte financeira junto com a planilha, e o userform que inicia esta com o nome errado na macro, vou dar mais uma olhada e vejo se consigo resolver seu problema


themusicgospel
Colaborador
Colaborador
Mensagens: 12
Registrado em: Ter Ago 23, 2011 11:07 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por themusicgospel »

sandrojrs escreveu: Qua Fev 21, 2018 8:45 am amigo dei uma olhada na sua planilha, está muito boa o nível de personalização, só não entendi por que tem uma parte financeira junto com a planilha, e o userform que inicia esta com o nome errado na macro, vou dar mais uma olhada e vejo se consigo resolver seu problema
Bom dia amigo.
Essa parte financeira que você esta vendo na planilha, era porque justamente tinha um formulário assim, mas eu tirei e deixei so o sistema de cadastro e esqueci de excluir essas planilhas que nao seriam mais utilizadas.

Ah, e obrigado pelo elogio.
Como no VBA + Excel nao permite tanta personalização assim, eu faço o layout no Photoshop mesmo.
Veja ai se consegue me ajudar.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


srobles
Jedi
Jedi
Mensagens: 805
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por srobles »

themusicgospel,

Conforme solicitado, veja se as alterações relacionadas á parte de exclusão de múltiplos itens atende sua necessidade.

Abs
Anexos
SISTEMA DE CADASTRO (1).zip
(325.81 KiB) Baixado 267 vezes


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por Reinaldo »

Uma possibilidade

Código: Selecionar todos

Private Sub btn_excluir_Click()
Dim Linha  As Long
Dim ID As Integer
    
Linha = 2

    
For i = 1 To List_Cad.ListItems.Count

    If List_Cad.ListItems(i).Checked = True Then
       ' ListBox1.RemoveItem (i)
        ID = List_Cad.ListItems(i).Text
'Exit Sub
    Plan4.Activate
    Do Until Plan4.Cells(Linha, 1) = ""
        'condição para localizar o código
        If Plan4.Cells(Linha, 1) = ID Then
            Plan4.Cells(Linha, 1).Select
            Dim Resposta As String 'cria a variável resposta
            Resposta = MsgBox("O registro será excluído. Confirma a exclusão?", vbYesNo + vbDefaultButton2, Soft) 'cria a mensagem para determinar qual ação será executada
            If Resposta = vbYes Then ' se a resposta for sim então
                'comando para deletar toda a linha
                ActiveCell.Rows("1:1").EntireRow.Select
                Selection.Delete Shift:=xlUp
                ActiveCell.Select
'                'limpa todos os campos do formulário
'              MsgBox "Dados excluídos com sucesso!", vbInformation, "SISTEMA INFORMA"
'                Unload Me
'                frmMenu.Show
            Else
            End If
        End If
        Linha = Linha + 1
    Loop
    End If
Linha = 2
Next
List_Cad.ListItems.Clear
Call CarregarClientes
End Sub


themusicgospel
Colaborador
Colaborador
Mensagens: 12
Registrado em: Ter Ago 23, 2011 11:07 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por themusicgospel »

srobles escreveu: Qui Fev 22, 2018 3:39 pm themusicgospel,

Conforme solicitado, veja se as alterações relacionadas á parte de exclusão de múltiplos itens atende sua necessidade.

Abs
Bom dia Amigo.
Obrigado pela atenção em relação ao meu pedido, porém nao funcionou.
Eu marquei as checkbox de varios cadastros, porém so foi excluido 1...os outros ficaram do mesmo jeito..
O que eu quero é marcar as checkbox, e ele excluir os dados do cliente no cadastro na planilha.
Seria um loop né?...pra ele ir percorrendo todos os clientes marcados e sair excluindo 1 por 1


themusicgospel
Colaborador
Colaborador
Mensagens: 12
Registrado em: Ter Ago 23, 2011 11:07 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por themusicgospel »

Reinaldo escreveu: Qui Fev 22, 2018 3:43 pm Uma possibilidade

Código: Selecionar todos

Private Sub btn_excluir_Click()
Dim Linha  As Long
Dim ID As Integer
    
Linha = 2

    
For i = 1 To List_Cad.ListItems.Count

    If List_Cad.ListItems(i).Checked = True Then
       ' ListBox1.RemoveItem (i)
        ID = List_Cad.ListItems(i).Text
'Exit Sub
    Plan4.Activate
    Do Until Plan4.Cells(Linha, 1) = ""
        'condição para localizar o código
        If Plan4.Cells(Linha, 1) = ID Then
            Plan4.Cells(Linha, 1).Select
            Dim Resposta As String 'cria a variável resposta
            Resposta = MsgBox("O registro será excluído. Confirma a exclusão?", vbYesNo + vbDefaultButton2, Soft) 'cria a mensagem para determinar qual ação será executada
            If Resposta = vbYes Then ' se a resposta for sim então
                'comando para deletar toda a linha
                ActiveCell.Rows("1:1").EntireRow.Select
                Selection.Delete Shift:=xlUp
                ActiveCell.Select
'                'limpa todos os campos do formulário
'              MsgBox "Dados excluídos com sucesso!", vbInformation, "SISTEMA INFORMA"
'                Unload Me
'                frmMenu.Show
            Else
            End If
        End If
        Linha = Linha + 1
    Loop
    End If
Linha = 2
Next
List_Cad.ListItems.Clear
Call CarregarClientes
End Sub
Reinaldo muito obrigado pela sua contribuição, o código funcionou perfeitamente.
Muito obrigado!


JONATHA123
Colaborador
Colaborador
Mensagens: 57
Registrado em: Sáb Set 30, 2017 2:26 pm

Re: excluir varios cadastros ao mesmo tempo - listview

Mensagem por JONATHA123 »

saulo ( srobles ) boa noite preciso de sua ajuda!! não era por aqui mas foi sua ultima resposta! ai te encontrei por aqui...
como eu faço para excluir automaticamente 250 linhas quando a ultima linha preenchida for a de numero 500 (sem a necessidade de a aba estar ativa no momento!), quando excluir essas 250 linhas, jogar as outras 250 para cima, ex: linha 2, abaixo de um cabeçalho qualquer....


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder