Como proteger células baseadas em data no Excel?
Normalmente, podemos proteger a planilha para evitar que outras pessoas editem ou modifiquem os valores das células, mas, às vezes, você precisa proteger as células com base na data. Por exemplo, eu quero proteger outras células, mas apenas permitir que os valores das células da data de hoje sejam modificados como mostrado na captura de tela a seguir, este artigo falará sobre como proteger as células com base na data.
Proteja todas as linhas, exceto a linha da data de hoje com o código VBA
Proteja todas as linhas em que a data passou com o código VBA
Proteja todas as linhas, exceto a linha da data de hoje com o código VBA
Permita apenas que a linha que é igual à data de hoje seja modificada, o código a seguir pode ajudá-lo, faça o seguinte:
1. Clique com o botão direito na guia da planilha em que deseja proteger as células com base na data e escolha Ver código a partir do menu de contexto, no pop-out Microsoft Visual Basic para Aplicações janela, copie e cole o seguinte código no módulo em branco:
Código VBA: protege todas as linhas, exceto a linha da data de hoje:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20161025
If Range("E" & Selection.Row).Value <> Date Then
ActiveSheet.Protect Password:="111111"
MsgBox "Only today's date row can be edited!", vbInformation, "Kutools for Excel"
ElseIf Range("E" & Selection.Row).Value = Date Then
ActiveSheet.Unprotect Password:="111111"
ActiveSheet.EnableSelection = xlNoRestrictions
End If
End Sub
Nota: No código acima, a letra E é o cabeçalho da coluna onde a data está localizada, “111111”É a senha para proteger esta folha. Você pode alterá-los conforme sua necessidade.
2. Em seguida, salve e feche esta janela de código.
(1.) Se você clicar em outras células além da linha da data de hoje, uma caixa de prompt aparecerá para lembrá-lo de que a célula não pode ser editada, veja a captura de tela:
(2.) Se você clicar e editar a linha igual à data de hoje, ela será modificada com sucesso, veja a captura de tela:
Proteja todas as linhas em que a data passou com o código VBA
Se você precisar proteger todas as linhas em que a data já passou, permita que apenas as linhas da data atual e futura sejam modificadas, aplique o seguinte código VBA:
1. Clique com o botão direito na guia da planilha em que deseja proteger as células com base na data e escolha Ver código a partir do menu de contexto, no pop-out Microsoft Visual Basic para Aplicações janela, copie e cole o seguinte código no módulo em branco:
Código VBA: proteger todas as linhas, a data passou:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updateby Extendoffice 20161025
Dim xRow As Long
xRow = 2
ThisWorkbook.ActiveSheet.Unprotect Password:="111111"
ThisWorkbook.ActiveSheet.Cells.Locked = False
Do Until IsEmpty(Cells(xRow, 5))
If Cells(xRow, 5) < Date Then
Rows(xRow).Locked = True
End If
xRow = xRow + 1
Loop
ThisWorkbook.ActiveSheet.Protect Password:="111111"
End Sub
Nota: No código acima, o número 5 é o número da coluna onde a data está localizada, “111111”É a senha para proteger esta folha. Você pode alterá-los conforme sua necessidade.
3. Em seguida, salve e feche esta janela de código.
(1.) Se você clicar nas células em que a data passou, uma caixa de aviso aparecerá para lembrá-lo de que a célula não pode ser editada, veja a captura de tela:
(2.) Se você clicar na célula de linhas para tentar alterar os valores na data de hoje ou na data futura, ela será modificada com sucesso, veja a captura de tela:
As melhores ferramentas de produtividade para escritório
O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%
- armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
- Barra Super Fórmula (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
- Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
- Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
- Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
- Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
- Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
- Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
- Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2021 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Recursos completos de avaliação gratuita de 30 dias. Garantia de devolução do dinheiro em 60 dias.

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!






























