Página 1 de 1

Macro para adicionar linhas em tabela (bloqueada)

Enviado: 18 Abr 2017 às 12:31
por Piacentini19
Olá.
Sei que este procedimento que desejo fazer tem que ser por VBA.
A senha é 123, pois quando esta desbloqueada ao digitar TAB ao final da tabela, precisamente na I45 ela adiciona automaticamente mais uma linha abaixo, porem quando bloqueada ela diz que isso não é possível.
Tem como fazer isso?
Desde já agradeço.

Re: Macro para adicionar linhas em tabela (bloqueada)

Enviado: 18 Abr 2017 às 13:34
por alexandrevba
Boa tarde!!

Segue.
Código: Selecionar todos
Sub AleVBA()

ActiveSheet.Unprotect "123"
    ActiveSheet.ListObjects("Tabela247").ListRows.Add
ActiveSheet.Protect Password:="123"

End Sub
Att

Macro para adicionar linhas em tabela (bloqueada)

Enviado: 18 Abr 2017 às 14:18
por Piacentini19
Boa tarde.
Este código acaba desprotegendo a planilha, não tem como apenas adicionar as linhas sem desproteger a planilha? Ou desproteger e logo proteger? O ideal seria não desbloquear a planilha, pois assim podem acabar com as estruturas dela, já que tem muitas planilhas relacionadas a esta mesma, e se um numero em um local errado for adicionado acabara com tudo.

Re: Macro para adicionar linhas em tabela (bloqueada)

Enviado: 18 Abr 2017 às 17:40
por alexandrevba
Boa tarde!!

O código foi editado!!


Att

Macro para adicionar linhas em tabela (bloqueada)

Enviado: 19 Abr 2017 às 14:30
por Piacentini19
Obrigado pela ajuda, mas não consigo configurar, copiei novamente o macro e desta vez não aconteceu nada, acho que devo não estar fazendo direito.
Não consegui mandar ela novamente, mas é a mesma de antes...

Re: Macro para adicionar linhas em tabela (bloqueada)

Enviado: 19 Abr 2017 às 17:56
por LzMonteiro
Olá amigo, boa tarde!

Tente usar esse código.
(Corrigido)
Testei na sua planilha, e pra mim funcionou bem.
Código: Selecionar todos
Sub Add_Row()

' Adicionar linha na "Row 45"
'
    ActiveSheet.Unprotect "123"
    Rows("45:45").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("45:45").Select
    ActiveSheet.Protect Password:="123"
    
End Sub

Obs: Crie um botão para chamar a macro ou adicione um atalho.


Dúvidas estou à disposição.
Att.

Macro para adicionar linhas em tabela (bloqueada)

Enviado: 20 Abr 2017 às 08:29
por Piacentini19
Bom dia Lz Monteiro!
Muito obrigado por sua ajuda, falta dois pontos que ainda gostaria que me ajudasse, kkkk.
Por gentileza. Assim, segui seus conselhos e criei um botão (aprendi agora) para chamar a macro, porem quando ele adiciona a linha e adiciona somente na linha 45, ate ai esta otimo, porem este é um fluxo de caixa, então os lançamentos subsequentes serão influenciados pelo saldo, e por exemplo, se tiver varios lançamentos no mês ai a estrutura e corrompida pelos lançamentos voltarem na linha 45. se tiver como a linha ser adicionada depois da ultima, isso claro se der.
Só mais uma coisa, que quando bloqueio a planilha, habilito a opção de formatar as celulas, porem quando executo o macro esta opção é perdida e bloqueia tudo. :)
Agradeço sua ajuda...

Re: Macro para adicionar linhas em tabela (bloqueada)

Enviado: 25 Abr 2017 às 18:01
por LzMonteiro
Boa tarde Piacentini19!

Desculpe a demora para responder, viajei esse fds e só retornei hoje.

Bom, não encontrei nada sobre adicionar linha abaixo.
A única forma que encontrei foi para adicionar acima.
Já para o problema de habilitar a opção de formatar células tenho a solução.

Utilize esse código abaixo (atualizado):
Código: Selecionar todos
Sub Add_Row()

' Adicionar linha na "Row 45"
'
    ActiveSheet.Unprotect "123"
    Rows("45:45").Select
    Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
    Rows("45:45").Select
    ActiveSheet.Protect Password:="123", DrawingObjects:=True, Contents:=True, Scenarios:=True _
        , AllowFormattingCells:=True

End Sub
Dúvidas, estou à disposição!

Lz Monteiro

Macro para adicionar linhas em tabela (bloqueada)

Enviado: 27 Abr 2017 às 10:07
por Piacentini19
Bom dia!
Quem pode, pode kkk.
Bom, obrigado pela ajuda, vocês são magos do excel, muito obrigado pela ajuda mesmo, foi de grande valia :)
Tudo de bom.
Obrigado mais uma vez.