Skip to main content

Como proteger células com base na data no Excel?

Author: Xiaoyang Last Modified: 2025-06-04

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, quero proteger as outras células, mas permitir apenas que os valores das células da data de hoje sejam modificados, conforme mostrado na captura de tela a seguir. Este artigo discutirá como proteger células com base na data.

protect cells based on date

Proteja todas as linhas, exceto a linha da data de hoje, com código VBA

Proteja todas as linhas cuja data já passou com código VBA


arrow blue right bubble Proteja todas as linhas, exceto a linha da data de hoje, com código VBA

Permita apenas que a linha igual à data de hoje seja modificada; o seguinte código pode ajudá-lo, por favor, faça o seguinte:

1. Clique com o botão direito do mouse na aba da planilha onde deseja proteger as células com base na data e, em seguida, escolha Visualizar Código no menu de contexto. Na janela Microsoft Visual Basic for Applications que apareceu, copie e cole o seguinte código no Módulo em branco:

Código VBA: Proteja 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

click View Code and paste the code intot he module

Observação: No código acima, a letra E é o cabeçalho da coluna onde a data está localizada, “111111” é a senha para proteger esta planilha. Você pode alterá-los conforme necessário.

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 aviso aparecerá para lembrá-lo de que a célula não pode ser editada, veja a captura de tela:

If click other cells beyond today’s date row, an prompt box will pop out to remind you the cell can’t be edited

(2.) Se você clicar e editar a linha igual à data de hoje, ela será modificada com sucesso, veja a captura de tela:

If click and edit the row equals today’s date, it will be modified

a screenshot of kutools for excel ai

Desbloqueie a Magia do Excel com o Kutools AI

  • Execução Inteligente: Realize operações de células, analise dados e crie gráficos — tudo impulsionado por comandos simples.
  • Fórmulas Personalizadas: Gere fórmulas sob medida para otimizar seus fluxos de trabalho.
  • Codificação VBA: Escreva e implemente código VBA sem esforço.
  • Interpretação de Fórmulas: Compreenda fórmulas complexas com facilidade.
  • Tradução de Texto: Supere barreiras linguísticas dentro de suas planilhas.
Potencialize suas capacidades no Excel com ferramentas alimentadas por IA. Baixe Agora e experimente uma eficiência como nunca antes!

arrow blue right bubble Proteja todas as linhas cuja data já passou com código VBA

Se você precisar proteger todas as linhas cuja data já passou, permitindo apenas que as linhas da data de hoje e futuras sejam modificadas, aplique o seguinte código VBA:

1. Clique com o botão direito do mouse na aba da planilha onde deseja proteger as células com base na data e, em seguida, escolha Visualizar Código no menu de contexto. Na janela Microsoft Visual Basic for Applications que apareceu, copie e cole o seguinte código no Módulo em branco:

Código VBA: Proteja todas as linhas cuja data já 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

click View Code and paste the code intot he module

Observação: No código acima, o número 5 é o número da coluna onde a data está localizada, “111111” é a senha para proteger esta planilha. Você pode alterá-los conforme necessário.

3. Em seguida, salve e feche esta janela de código.

(1.) Se você clicar nas células cuja data já passou, uma caixa de aviso aparecerá para lembrá-lo de que a célula não pode ser editada, veja a captura de tela:

If click the cells date has passed, an prompt box will pop out to remind the cell can’t be edited

(2.) Se você clicar na célula das linhas para tentar alterar os valores na data de hoje ou em datas futuras, ela será modificada com sucesso, veja a captura de tela:

If click the cell of rows to try to change the values in today’s date or future date, it will be modified

Melhores Ferramentas de Produtividade para Office

🤖 Assistente AI do KUTOOLS: Revolucione a análise de dados com base em: Execução Inteligente | Gerar Código | Criar Fórmulas Personalizadas | Analisar Dados e Gerar Gráficos | Invocar Funções Aprimoradas
Recursos Populares: Encontrar, Destacar ou Marcar Duplicatas | Excluir Linhas em Branco | Combinar Colunas ou Endereço sem Perder Dados | Arredondar...
Super PROC: PROC com Múltiplos Critérios | PROC com Múltiplos Valores | Procura em várias planilhas | Correspondência Fuzzy...
Lista Suspensa Avançada: Crie rapidamente uma Lista Suspensa | Lista Suspensa Dependente | Lista Suspensa com Múltipla Seleção...
Gerenciador de Colunas: Adicionar um Número Específico de Colunas | Mover Colunas | Alternar Estado de Visibilidade das Colunas Ocultas | Comparar Intervalo & Colunas...
Recursos em Destaque: Grade de foco | Visualização de Design | Barra de fórmulas aprimorada | Gerenciador de Pasta de trabalho & Planilha | Biblioteca de AutoTexto | Selecionador de Data | Mesclar Dados | Criptografar/Descriptografar Células | Enviar Email por Lista | Super Filtro | Filtro Especial (filtrar negrito/itálico/tachado...)...
Top15 Conjuntos de Ferramentas:12 Ferramentas de Texto (Adicionar Texto, Excluir Caracteres Específicos, ...) | Mais de50 Tipos de Gráficos (Gráfico de Gantt, ...) | Mais de40 Fórmulas Práticas (Calcular a idade com base na data de nascimento, ...) |19 Ferramentas de Inserção (Inserir Código QR, Inserir Imagem a partir do Caminho, ...) |12 Ferramentas de Conversão (Converter em Palavras, Conversão de Moeda, ...) |7 Ferramentas de Mesclar & Dividir (Mesclar Linhas Avançado, Dividir Células, ...) | ... e muito mais

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!