Ir ao conteúdo
  • Cadastre-se
Mika Ferr

RESOLVIDO Botão excluir determinada linha em determinada planilha

Recommended Posts

Olá pessoal, boa noite, estou me matando aqui para tentar excluir uma linha de um banco de dados através de um formulário está tudo funcionando perfeitamente. menos esse detalhe,  como posso dentro do código abaixo indicar para o botão que tudo isso tem que acontecer na "plan3" , fiz várias pesquisar e tentativas e até agora nada deu certo. peço a ajuda dos amigos. obrigado.

 

Private Sub btnexcluir_Click()
Range("a2").Select
 
For cont = 1 To 1000
If ActiveCell = txtnome.Text Then
resposta = MsgBox("Deseja excluir cliente?", 3, "Excluir Cliente")
 
End If
 
If resposta = vbYes Then
ActiveCell.EntireRow.Delete
 
End If
 
ActiveCell.Offset(1, 0).Activate
Next
Range("A2").Select
 
End Sub

Compartilhar este post


Link para o post
Compartilhar em outros sites

...tente desta forma :

 

Private Sub btnexcluir_Click()
    Dim sh As Worksheet
    Set sh = Sheets("plan3")
    With sh
        .Range("a2").Activate

        For cont = 1 To 1000
            If ActiveCell = txtnome.Text Then
                resposta = MsgBox("Deseja excluir cliente?", 3, "Excluir Cliente")

            End If

            If resposta = vbYes Then
                ActiveCell.EntireRow.Delete

            End If

            ActiveCell.Offset(1, 0).Activate
        Next
        .Range("A2").Activate

    End Sub

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
erro de compilação 
 
era esperado End Whith

Tentei colocar "end whith" em alguns pontos do código, mas nenhum deu certo... tipo antes de "For" depois de "next" e antes de "End Sub", Não deu certo também.

Compartilhar este post


Link para o post
Compartilhar em outros sites

ops. veja agora: 

Private Sub btnexcluir_Click()
    Dim sh As Worksheet
    Set sh = Sheets("plan3")
    With sh
        .Range("a2").Activate

        For cont = 1 To 1000
            If ActiveCell = txtnome.Text Then
                resposta = MsgBox("Deseja excluir cliente?", 3, "Excluir Cliente")

            End If

            If resposta = vbYes Then
                ActiveCell.EntireRow.Delete

            End If

            ActiveCell.Offset(1, 0).Activate
        Next
        .Range("A2").Activate
    End With
End Sub


  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora deu este erro.

 

 
Erro em tempo de execução '1004':
 
O método Activate da classe Range falhou
 
 
acho que eu tinha tentado isso, kkk.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Private Sub btnexcluir_Click()  Dim LR As Long, k As Long, resposta As Variant    With Sheets("Plan2")      LR = .Cells(Rows.Count, 1).End(xlUp).Row      For k = LR To 2 Step -1        If .Cells(k, 1) = txtnome.Text Then         resposta = MsgBox("Deseja excluir cliente " & UCase(.Cells(k, 1)) & "?", 3, "Excluir Cliente")          If resposta = vbYes Then            .Rows(k).Delete          End If        End If      Next k    End WithEnd Sub

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites
Private Sub btnexcluir_Click()  Dim LR As Long, k As Long, resposta As Variant    With Sheets("Plan2")      LR = .Cells(Rows.Count, 1).End(xlUp).Row      For k = LR To 2 Step -1        If .Cells(k, 1) = txtnome.Text Then         resposta = MsgBox("Deseja excluir cliente " & UCase(.Cells(k, 1)) & "?", 3, "Excluir Cliente")          If resposta = vbYes Then            .Rows(k).Delete          End If        End If      Next k    End WithEnd Sub

Deu certo.. funcionou perfeitamente, Obrigado aos amigos que ajudaram, osvaldomp e basole, e toda galera do fórum..acho que vão enjoar de me ver por aqui. kkk.

 

só gostaria de entender a fórmula, é que estou começando em Vba e alguma formulas consigo entender, outras somente copiar, mas vou tentando decifrar aos poucos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

só gostaria de entender a fórmula, é que estou começando em Vba e alguma formulas consigo entender, outras somente copiar, mas vou tentando decifrar aos poucos.

 

Olá, Mika.

Para um bom começo em macros sugiro que você dê atenção à nomenclatura dos componentes de uma macro. Assim, o que você está utilizando para excluir a linha de certo cliente é um código e não uma fórmula. Macro é o conjunto formado pelo código, pelo módulo onde o código é instalado, pelo comando que dispara o código. VBA (Visual Basic for Applications) é a linguagem utilizada para se escrever os códigos.

A Ajuda do Excel e do Editor de VBA podem te auxiliar. Se quiser saber sobre certo comando coloque o cursor sobre ele e aperte "F1".

 

Se quiser comentários sobre o código que eu sugeri diga quais as partes do código que você não entendeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mika

 

Você está se esquecendo de clicar no botão Curtir das resposta que você obteve.

 

No final, clique no botão Resolvido da resposta que melhor te atendeu.

 

[]s

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu osvaldomp, pela disposição mas acho melhor eu ira aos poucos com a ajuda do VBA, senão este tópico ia se alongar muito. Obrigado por resolver meu problema e a galera que se disponibilizou para ajudar. Peguei muitas mandadas e conseguir entender o funcionamento de alguns códigos, através de videos no you tube. até porque quando falei formula me expressei mal. quis dizer entender o que faz cada funçao de cada código. logo aprendo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×