Página 1 de 1

Apagar linha da célula secionada em Tabela

Enviado: 03 Abr 2021 às 16:33
por pjuliocesar
Boa tarde a todos,

Estou estudando VBA e desenvolvimento uma planilha pessoal. Por indicação de colegas aqui do Fórum estou utilizando o material do Bertolo para aprimorar meu estudo do VBA.

No momento estou com o seguinte problema:

Eu tenho um objeto do tipo tabela criado "TabCeV" para facilitar a manipulação de dados .
Nesse sentido, gostaria de criar um código para o usuário excluir a linha da célula selecionada.
Mas eu não sei como fazer isso, se uso algum método do "ListObject" ou algo assim...

Além disso, quando exclui a linha, exibi novamente uma linha do final da planilha "Ocultei todas".
Então preciso que o código também oculte essa nova linha que reexibiu. :D :D

Para os amigos que tiver mais tempo, e quiserem analisar e palpitar no código que criei para cadastrar informações na tabela "cev_novalinha()" será também super bem vindo! Se possível explicar problemas e formas de melhorar para eu aprender mais :geek:

Quem tiver material e referências de estudo VBA agradeço também. :mrgreen:

Re: Apagar linha da célula secionada em Tabela

Enviado: 05 Abr 2021 às 08:54
por luizpaps
veja se assim te ajuda
Código: Selecionar todos
Sub ApagarLinha()

Dim iRow As Integer 'variável para receber a linha ativa da tabela

'
' Macro capaz de apagar a linha da célula da tabela "TabCeV" que está selecionada

' usa ListObject.ListRows ???
'

iRow = Selection.Row - Selection.ListObject.Range.Row 'atribuindo a linha selecionada à variável
Plan3.ListObjects("TabCeV").ListRows(iRow).Delete 'deletando a linha selecionada da tabela
Selection.End(xlDown).Select 'desce até o fim da tabela
Selection.End(xlDown).EntireRow.Hidden = True 'desce até a última linha da plan e oculta
End Sub
veja que no código usei Plan3, ao invés de usar ActiveWorkbook.Worksheets("C&V"), isso é uma das boas práticas do vba, só uma dica

Se ajudei, por favor clique no obrigado, se resolveu seu problema edite o tópico e coloque [RESOLVIDO] no título do tópico

Re: Apagar linha da célula secionada em Tabela

Enviado: 15 Abr 2021 às 12:26
por pjuliocesar
Luiz,

O Còdigo está muito bom ! Resolveu meu problema base!
Mas gostaria que quando terminasse o código ele voltasse para a mesma célula que estava,

Tentei fazer alguns testes aqui como:

Plan3.ListObjects("TabCeV").ListRows(iRow).Select

ou

range(iRow).select

mas está com erro de depuração. Ainda não me acostumei com a sintaxe do VBA então tenho erros básicos como esse.
Poderia me ajudar nessa?

Re: Apagar linha da célula secionada em Tabela

Enviado: 15 Abr 2021 às 19:05
por CursoDeExcelGratis
oi Luiz, boa noite , não tive tempo ainda de ver sua planilha nem o codigo já postado, mas vi que vc pede referencia sobre VBA, bom, estou iniciando uma serie de videos de VBA no meu canal do you tube, acredito que possa lhe interessar, estou fazendo através de jogos.
https://www.youtube.com/playlist?list=P ... LhhWNA33Ma
espero que possa lhe ajudar.