Como bloquear ou proteger células após a entrada de dados no Excel?
Suponha que você tenha uma planilha e apenas uma determinada faixa de células em branco precise de entrada de dados, e após concluir a inserção de dados, você precisa que as células sejam bloqueadas automaticamente para evitar novas alterações. Como você pode alcançar isso? Este artigo pode ajudá-lo.
Bloquear ou proteger células após a entrada de dados com código VBA
Bloquear ou proteger células após a entrada de dados com código VBA
Por exemplo, a faixa específica de células em branco é A1:F8. Por favor, siga os passos abaixo para bloquear essas células após a entrada de dados no Excel.
1. Primeiro, desbloqueie esta faixa selecionando as células, clicando com o botão direito do mouse, escolhendo Definir Formato de Célula no menu de contexto, e na caixa de diálogo Formatar Células, desmarque a opção Bloqueadas na aba Proteção, e finalmente clique no botão OK. Veja a captura de tela:
2. Clique em Revisão > Proteger Planilha. E especifique uma senha para proteger esta planilha.
3. Clique com o botão direito na guia da planilha, selecione Visualizar Código no menu de contexto. Em seguida, copie e cole o código VBA abaixo na janela Código. Veja a captura de tela:
Código VBA: Bloquear ou proteger células após a entrada de dados
Dim mRg As Range
Dim mStr As String
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("A1:F8"), Target) Is Nothing Then
Set mRg = Target.Item(1)
mStr = mRg.Value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xRg As Range
On Error Resume Next
Set xRg = Intersect(Range("A1:F8"), Target)
If xRg Is Nothing Then Exit Sub
Target.Worksheet.Unprotect Password:="123"
If xRg.Value <> mStr Then xRg.Locked = True
Target.Worksheet.Protect Password:="123"
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("A1:F8"), Target) Is Nothing Then
Set mRg = Target.Item(1)
mStr = mRg.Value
End If
End Sub
Observação: No código, “A1:F8” é o intervalo onde você precisa inserir dados; e “123” é a senha para a planilha protegida. Altere-os conforme necessário.
4. Pressione simultaneamente as teclas Alt + Q para fechar a janela Microsoft Visual Basic for Applications.
Após concluir a entrada de dados nas células do intervalo A1:F8, elas serão bloqueadas automaticamente. E você receberá uma caixa de diálogo de aviso se tentar alterar qualquer conteúdo de célula deste intervalo. Veja a captura de tela:
Artigos relacionados:
- Como bloquear todas as referências de células em fórmulas de uma só vez no Excel?
- Como bloquear ou desbloquear células com base nos valores de outra célula no Excel?
- Como bloquear uma imagem dentro de uma célula no Excel?
Melhores Ferramentas de Produtividade para Office
Impulsione suas habilidades no Excel com Kutools para Excel e experimente uma eficiência sem igual. 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...
Office Tab traz interface de abas para o Office e facilita muito 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 da mesma janela, em vez de novas janelas.
- Aumente sua produtividade em50% e reduza centenas de cliques do mouse todos os dias!