Este procedimento testa "NomeCliente", "Sobrenome" e "NomeObra". Vamos dizer que eu tenho um cadastro com 10(dez) clientes e que 2(dois) deles tem o NomeCliente = Pedro com Sobrenomes/diferentes e NomeObras/diferentes. Quero excluir um Pedro, pois foi uma entrada equivocada. Faço a pesquisa através do Nome, encontro os 2(dois) Pedros que são listados em uma ListBox, seleciono na ListBox o Pedro que quero excluir e então ele é mostrado no formulário para edição ou exclusão - (na planilha do excel o pedro que escolhi fica na linha mais abaixo do que o outro Pedro, isto é, o teste tem que passar pelo primeiro Pedro para excluir o segundo Pedro). Pressiono Excluir e então começa a busca. Neste ponto estou com problema: "Do While Loop" testa as condicionais, mas na primera ocorrencia de Pedro ele já sai do Loop e então nada é excluido. Como contornar este problema?
Vejam o código
Private Sub btnExcluir_Click()
Dim LinhaExcluir As Integer
Dim resposta As Variant
contador = 0
Range("A1").Select
Do While ActiveCell.Text <> tbxNomeCliente.Text And ActiveCell.Offset(0, 1).Text <> tbxSobrenome.Text And ActiveCell.Offset(0, 2).Text <> tbxNomeObra.Text And contador < 100
ActiveCell.Offset(1, 0).Select
contador = contador + 1
Loop
'Aqui, a condicional de "Do While Loop" foi encontrada e então certifica a exclusão.
If ActiveCell.Text = tbxNomeCliente.Text And ActiveCell.Offset(0, 1).Text = tbxSobrenome.Text And ActiveCell.Offset(0, 2).Text = tbxNomeObra.Text Then
resposta = MsgBox("Tem certeza que deseja excluir o registro?", vbYesNo, "Atenção!!")
Pergunta
Ryxard
Olá!
Este procedimento testa "NomeCliente", "Sobrenome" e "NomeObra". Vamos dizer que eu tenho um cadastro com 10(dez) clientes e que 2(dois) deles tem o NomeCliente = Pedro com Sobrenomes/diferentes e NomeObras/diferentes. Quero excluir um Pedro, pois foi uma entrada equivocada. Faço a pesquisa através do Nome, encontro os 2(dois) Pedros que são listados em uma ListBox, seleciono na ListBox o Pedro que quero excluir e então ele é mostrado no formulário para edição ou exclusão - (na planilha do excel o pedro que escolhi fica na linha mais abaixo do que o outro Pedro, isto é, o teste tem que passar pelo primeiro Pedro para excluir o segundo Pedro). Pressiono Excluir e então começa a busca. Neste ponto estou com problema: "Do While Loop" testa as condicionais, mas na primera ocorrencia de Pedro ele já sai do Loop e então nada é excluido. Como contornar este problema?
Vejam o código
Private Sub btnExcluir_Click()
Dim LinhaExcluir As Integer
Dim resposta As Variant
contador = 0
Range("A1").Select
Do While ActiveCell.Text <> tbxNomeCliente.Text And ActiveCell.Offset(0, 1).Text <> tbxSobrenome.Text And ActiveCell.Offset(0, 2).Text <> tbxNomeObra.Text And contador < 100
ActiveCell.Offset(1, 0).Select
contador = contador + 1
Loop
'Aqui, a condicional de "Do While Loop" foi encontrada e então certifica a exclusão.
If ActiveCell.Text = tbxNomeCliente.Text And ActiveCell.Offset(0, 1).Text = tbxSobrenome.Text And ActiveCell.Offset(0, 2).Text = tbxNomeObra.Text Then
resposta = MsgBox("Tem certeza que deseja excluir o registro?", vbYesNo, "Atenção!!")
If resposta = vbYes Then
LinhaExcluir = ActiveCell.Row
Rows(LinhaExcluir).Select
Selection.Delete Shift:=xlUp
End If
End If
End Sub
Ryxard
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.