KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como identificar sobreposições de datas ou intervalos de tempo no Excel?

AutorSun Data de Modificação

No Excel, sobreposições de datas ou intervalos de tempo podem causar conflitos de agenda, problemas na alocação de recursos ou comprometer a integridade dos dados. Identificar essas sobreposições de forma eficiente é essencial para gerir escalas, planear eventos, administrar sistemas de reservas ou coordenar cronogramas de projetos em que um período não deve coincidir com outro. Este artigo apresenta orientações passo a passo com abordagens práticas para detetar sobreposições de datas ou intervalos de tempo no Excel, conforme ilustrado na imagem seguinte.
encontrar datas sobrepostas

Verificar sobreposição de datas/Intervalo de Tempo com fórmula

Código VBA – Detetar automaticamente sobreposições de datas/Intervalo de Tempo em conjuntos de dados maiores ou para Gerar Relatório

Usar Formatação Condicional – Destacar visualmente intervalos sobrepostos diretamente na folha de cálculo para facilitar a identificação


seta azul com balão à direita Verificar sobreposição de datas/Intervalo de Tempo com fórmula

Quando precisa verificar sistematicamente se datas ou intervalos de tempo se sobrepõem, as fórmulas do Excel oferecem uma solução rápida e flexível. Esta abordagem é ideal para conjuntos de dados pequenos a médios ou sempre que necessitar de um resultado lógico (VERDADEIRO ou FALSO) que indique sobreposições linha a linha.

Casos de utilização típicos: Escalonamento de turnos de funcionários, reservas de eventos, acompanhamento de fases de projetos ou gestão de alugueres — onde cada linha representa um intervalo com data e hora de início e de término.

Limitações: Embora eficientes para listas de dimensão moderada, as fórmulas podem revelar-se menos adequadas para conjuntos de dados muito extensos ou para a geração de relatórios abrangentes sobre sobreposições entre múltiplos registos.

1. Selecione todas as células que contêm as suas datas de início. Com o intervalo selecionado, clique na Caixa de Nome (o campo à esquerda da Barra de Fórmulas) e introduza um nome descritivo, como datainicio. Prima Enter para confirmar. Este passo permite-lhe referenciar facilmente toda a lista nas fórmulas. Veja a imagem:
definir um nome de intervalo para as datas de início

2. Da mesma forma, selecione as células da Data de término, introduza um nome na Caixa de Nome como datafim e prima novamente Enter. Atribuir nomes a intervalos torna as suas fórmulas mais legíveis e reutilizáveis.
definir um nome de intervalo para as datas de fim

3. Clique numa célula vazia na mesma linha do seu primeiro registo — por exemplo, C2 — onde pretende que os resultados da sobreposição apareçam e introduza a seguinte fórmula:

=SUMPRODUCT((A2<enddate)*(B2>=startdate))>1

Substitua A2 pela célula que contém a data de início do seu registo e B2 pela sua data de término. datafim e datainicio utilizam os nomes que definiu. Esta fórmula verifica se o seu intervalo atual se sobrepõe a qualquer outro na lista. Prima Enter e arraste a alça de preenchimento para baixo em todas as linhas que pretende verificar. Para cada linha, VERDADEIRO significa que o respetivo intervalo se sobrepõe a pelo menos outro; caso contrário, não foi detetada qualquer sobreposição.

utilizar uma fórmula para verificar se o intervalo de datas relativo se sobrepõe a outros

Certifique-se de que tanto datainicio como datafim se referem às colunas inteiras que contêm os valores de início e fim. Ajuste as referências das células conforme necessário se as suas colunas forem diferentes ou se os seus intervalos incluírem cabeçalhos.

Notas importantes e resolução de problemas:

  • Se receber um erro #VALOR!, verifique se os nomes das suas células e as referências estão corretos e se as colunas de datas não contêm texto nem dados de data/hora com formatação incorreta.
  • Esta abordagem considera casos sobrepostos em que os períodos não são totalmente distintos. Intervalos que se tocam apenas nos extremos — ou seja, quando a data de término de um corresponde exatamente à data de início de outro — geralmente não são considerados sobrepostos, mas é possível ajustar esse comportamento modificando a desigualdade na fórmula.
  • Para o intervalo de tempo (incluindo horas e minutos), a fórmula funciona exatamente como com datas, desde que as células estejam formatadas de forma consistente como horas ou datas.

seta azul com balão à direita Código VBA – Detetar automaticamente sobreposições de datas/Intervalo de Tempo em conjuntos de dados maiores ou para Gerar Relatório

Se trabalha regularmente com grandes conjuntos de dados e precisa de uma forma mais automatizada de identificar sobreposições — especialmente ao gerar relatórios resumidos ou marcar todas as entradas conflituosas de uma só vez —, o uso de VBA pode agilizar significativamente o processo. Esta abordagem elimina verificações manuais, é ideal para centenas ou milhares de intervalos e pode ser personalizada para destacar ou listar todos os pares sobrepostos.

Quando utilizar: Recomendado para utilizadores avançados que gerem grandes bases de dados de agendamento, recursos partilhados ou qualquer pessoa que precise de gerar registos detalhados de todas as sobreposições detetadas, em vez de uma simples indicação VERDADEIRO/FALSO por linha.

Desvantagens potenciais: Requer ativação de macros, alguma familiaridade com VBA e uma cópia de segurança cuidadosa dos dados antes da primeira execução, para evitar substituições acidentais.

1. Clique em Ferramentas de Programador > Visual Basic para abrir a janela do Microsoft Visual Basic para Aplicações. Em seguida, clique em Inserir > Módulo e cole o código abaixo na janela do módulo:

Sub FindOverlappingDateRanges()
    Dim ws As Worksheet
    Dim i As Long, j As Long
    Dim lastRow As Long
    Dim overlapList As String
    Dim msg As String
    Dim Start1, End1, Start2, End2
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = ActiveSheet
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row ' Assumes data starts in row 2
    overlapList = ""
    
    For i = 2 To lastRow
        Start1 = ws.Cells(i, 1).Value
        End1 = ws.Cells(i, 2).Value
        
        If Start1 <> "" And End1 <> "" Then
            For j = 2 To lastRow
                If i <> j Then
                    Start2 = ws.Cells(j, 1).Value
                    End2 = ws.Cells(j, 2).Value
                    
                    If Start2 <> "" And End2 <> "" Then
                        If Start1 < End2 And End1 > Start2 Then
                            overlapList = overlapList & "Row " & i & " overlaps with Row " & j & vbCrLf
                        End If
                    End If
                End If
            Next j
        End If
    Next i
    
    If overlapList <> "" Then
        msg = "The following rows have overlapping date/time ranges:" & vbCrLf & overlapList
    Else
        msg = "No overlapping date/time ranges found."
    End If
    
    MsgBox msg, vbInformation, "KutoolsforExcel"
End Sub

2. Após introduzir o código, clique em Executar ou prima Enter para executar o código. A macro analisa pares de intervalos de datas nas colunas A (Início) e B (Fim), identificando quaisquer sobreposições. Será apresentada uma caixa de mensagem com todas as linhas em conflito, facilitando a auditoria ou investigação.

Resolução de problemas:

  • Certifique-se de que os valores iniciais e as datas de término estejam nas colunas A e B, a partir da linha 2 (com a linha 1 reservada para o cabeçalho). Ajuste os intervalos caso os seus dados estejam organizados de forma diferente.
  • Todas as células devem conter valores válidos de data e hora, sem deixar nenhuma célula vazia no intervalo comparado.
  • Faça uma cópia de segurança dos seus ficheiros importantes antes de executar ou adaptar código VBA, para evitar qualquer perda de dados.

Dica: Pode aprimorar o código VBA para assinalar sobreposições diretamente na folha de cálculo, colorindo linhas ou inserindo os resultados numa coluna adjacente.

seta azul com balão à direita Usar Formatação Condicional – Destacar visualmente intervalos sobrepostos diretamente na folha de cálculo para facilitar a identificação

Usar Formatação Condicional é uma forma prática de destacar visualmente intervalos de datas ou horas sobrepostos diretamente na sua folha de cálculo. Esta solução revela-se especialmente útil em agendas intensas, gráficos de Gantt ou cronogramas de eventos, onde pretende identificar rapidamente os registos em conflito.

Ideal para: Utilizadores que pretendem feedback imediato na folha ou indicações visuais sem recorrer a fórmulas em todas as linhas nem executar código. Perfeito para verificações interativas de dados e apresentações.

Limitações: Conjuntos de dados grandes podem tornar a resposta mais lenta; além disso, embora as sobreposições sejam destacadas, não são gerados pares detalhados nem contagens.

Como aplicar:

  1. Selecione o intervalo da Data de Início (por exemplo,)A2:A100) e da Data de Término (B2:B100), ou selecione ambas as colunas em conjunto se os intervalos forem adjacentes.
  2. No separador Base, clique em Usar Formatação Condicional > Nova Regra.
  3. Escolha Utilizar uma fórmula para determinar quais as células a formatar.
  4. Introduza esta fórmula na caixa de fórmulas (assumindo que a sua seleção começa na linha 2):
    =SUMPRODUCT(($A2<$B$2:$B$100)*($B2>$A$2:$A$100))>1
  5. Clique em Formatar…, escolha uma cor de preenchimento para destacar intervalos sobrepostos e clique em OK para aplicar.

Após a aplicação da regra, qualquer linha em que o intervalo selecionado se sobreponha a outro no seu intervalo será destacada visualmente, facilitando a identificação de problemas sem necessidade de ler cada entrada individualmente.

Dica: Ajuste $A$2:$A$100 e $B$2:$B$100 para corresponderem ao seu intervalo de dados real e certifique-se de que as referências correspondem à primeira linha da sua seleção.

Precauções: Se pretender destacar apenas uma das duas colunas (por exemplo, apenas a Data de Início), continue a utilizar a lógica da fórmula correspondente. Ajuste a sobreposição nos limites de acordo com as suas necessidades lógicas específicas.

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o 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
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos