Como manter a tabela expansível ao inserir uma linha de tabela em uma planilha protegida no Excel?
No Excel, quando você protege uma planilha, a funcionalidade de expansão automática das tabelas geralmente é desativada. Por exemplo, se você tiver uma tabela chamada Tabela1 e tentar adicionar dados abaixo da última linha em uma planilha protegida, a tabela não se expandirá automaticamente para incluir a nova linha. No entanto, há uma maneira de manter sua tabela expansível mesmo em uma planilha protegida. Este tutorial irá guiá-lo pelas etapas para habilitar a expansão automática da sua tabela enquanto a planilha permanece protegida.
Manter a tabela expansível ao inserir uma linha de tabela em uma planilha protegida com código VBA
Manter a tabela expansível ao inserir uma linha de tabela em uma planilha protegida com código VBA
Como mostrado na captura de tela abaixo, uma tabela chamada Tabela1 em sua planilha, e a última coluna da tabela é uma coluna de fórmulas. Agora você precisa proteger a planilha para evitar que a coluna de fórmulas seja alterada, mas permitir expandir a tabela inserindo uma nova linha e atribuir novos dados às novas células. Por favor, siga os passos abaixo.
1. Clique em Desenvolvedor > Inserir > Botão (Controle de Formulário) para inserir um botão de Controle de Formulário na sua planilha.
2. Na caixa de diálogo Atribuir Macro que aparece, clique no botão Novo.
3. Na janela Microsoft Visual Basic for Applications, copie e cole o seguinte código VBA entre os parágrafos Sub e End Sub na janela Código.
Código VBA: Manter a tabela expansível ao inserir uma linha de tabela em uma planilha protegida
'Update by ExtendOffice 20220826
Dim xRg, tableRg As Range
Dim xRowCount As Integer
Dim pswStr As String
pswStr = "123"
On Error Resume Next
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:=pswStr
Set tableRg = ActiveSheet.ListObjects("Table4").Range
xRowCount = tableRg.Rows.Count
Set xRg = Range("Table4[[#Headers],[Total]]").Offset(1, 0)
Set yRg = xRg.Resize(xRowCount, 1)
xRg.Resize(xRowCount - 1, 1).AutoFill Destination:=yRg, Type:=xlFillDefault
ActiveSheet.Protect Password:=pswStr, DrawingObjects:=False, _
Contents:=True, Scenarios:=False, _
AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowFormattingRows:=True, AllowInsertingColumns:=True, _
AllowInsertingRows:=True, AllowInsertingHyperlinks:=True, _
AllowDeletingColumns:=True, AllowDeletingRows:=True, _
AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True
Application.ScreenUpdating = True
Notas:
4. Pressione as teclas Alt + Q para fechar a janela Microsoft Visual Basic for Applications.
5. Selecione as células na tabela onde você precisa atribuir novos dados, exceto na coluna de fórmulas, depois pressione as teclas Ctrl + 1 para abrir a caixa de diálogo Formatar Células. Na caixa de diálogo Formatar Células, desmarque a caixa Bloqueadas e clique no botão OK. Veja a captura de tela:
6. Agora proteja sua planilha com a senha especificada no código VBA.
A partir de agora, após clicar no botão de Controle de Formulário na sua planilha protegida, a tabela será expansível ao inserir uma nova linha, conforme mostrado na captura de tela abaixo.
Nota: você pode modificar a tabela, exceto a coluna de fórmulas na planilha protegida.
Artigos relacionados:
- Como manter o filtro da Tabela Dinâmica se movendo com a rolagem da planilha no Excel?
- Como combinar células e manter a formatação da célula no Excel?
- Como remover duplicatas, mas manter a primeira instância no Excel?
Melhores Ferramentas de Produtividade para Office
Potencialize suas habilidades no Excel com o Kutools para Excel e experimente uma eficiência sem igual. O Kutools para Excel oferece mais de300 recursos avançados para aumentar sua produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
O Office Tab traz interface com abas para o Office e facilita muito o seu trabalho
- Habilite a edição e leitura com abas no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas abas na mesma janela, em vez de abrir novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!