Skip to main content

Como contar o número de ocorrências por ano/trimestre/mês/semana no Excel?

Author: Kelly Last Modified: 2025-07-21

No trabalho diário, a análise de dados muitas vezes exige resumir o número de registros ou eventos por períodos de tempo, como contar quantas vendas ocorreram em cada mês, rastrear a frequência de atividades por semana ou analisar tendências sazonais por trimestre. Embora a função CONT.SE seja comumente usada para contar dados com base em critérios específicos no Excel, pode não ser sempre direta quando você deseja agrupar e contar datas por ano, mês, trimestre ou semana diretamente. Para enfrentar esses desafios, este artigo apresenta vários métodos práticos e fáceis de aplicar para contar ocorrências por vários períodos de tempo (ano, trimestre, mês, semana, dia da semana) no Excel, ajudando você a resumir e analisar dados baseados em tempo de forma eficiente e evitar erros manuais de contagem.


Conte o número de ocorrências por ano/mês com fórmulas

Quando você precisa descobrir rapidamente quantas vezes um determinado evento ocorreu em um ano ou mês específico, as fórmulas oferecem uma abordagem flexível e dinâmica. Usando funções de data embutidas junto com SOMARPRODUTO, você pode calcular diretamente contagens por ano, mês ou qualquer combinação desses, tornando seu resumo preciso e atualizado automaticamente quando os dados de origem mudam. Essa abordagem funciona bem na maioria das tarefas de análise rotineiras para conjuntos de dados pequenos e médios.

Selecione uma célula em branco onde deseja exibir o resultado da contagem e, em seguida, insira a seguinte fórmula:

=SOMARPRODUTO((MÊS($A$2:$A$24)=F2)*(ANO($A$2:$A$24)=$E$2))

Após inserir a fórmula, arraste a alça de preenchimento automático da célula para baixo para aplicar a fórmula a outras linhas conforme necessário. Como mostrado abaixo:
apply a formual to count the number of occurrences per year and month

Notas e dicas:

  • Na fórmula MÊS($A$2:$A$24)=F2 e ANO($A$2:$A$24)=$E$2 são critérios que correspondem ao mês especificado em F2 e ao ano em E2. Atualize os intervalos e referências (como A2:A24, E2, F2) para se ajustar ao layout dos seus dados.
  • Para uma contagem apenas por mês, ignorando o ano, use:
    =SOMARPRODUTO(1*(MÊS($A$2:$A$24)=F2))
  • Certifique-se de que a coluna de data contenha valores de data reais do Excel, não datas formatadas como texto para evitar erros ou incompatibilidades. Se sua fórmula retornar resultados inesperados, verifique novamente a formatação da data.
  • Se o seu conjunto de dados for grande, considere usar Tabelas Dinâmicas ou VBA para melhor desempenho e manutenção mais fácil.

Esse método é adequado para a maioria dos cenários que exigem estatísticas rápidas de data e quando você quer que os resultados sejam atualizados automaticamente após modificações nos dados. No entanto, trabalhar com múltiplas condições de agrupamento pode tornar as fórmulas complexas e difíceis de manter.


Conte o número de ocorrências por ano/mês/dia da semana/dia com Kutools para Excel

Se você tiver o Kutools para Excel instalado, pode aproveitar seus utilitários intuitivos para agrupar e contar o número de ocorrências por ano, mês, dia da semana, dia ou combinações adicionais, como ano e mês ou mês e dia, sem precisar construir fórmulas complexas. Essa abordagem é especialmente eficiente para usuários que procuram uma solução visual e baseada em menus.

Kutools para Excel oferece mais de 300 recursos avançados para simplificar tarefas complexas, aumentando a criatividade e a eficiência. Integrado com capacidades de IA, o Kutools automatiza tarefas com precisão, tornando a gestão de dados fácil e eficiente. Mais informações sobre o Kutools para Excel...  Teste gratuito...

1. Selecione a coluna que contém suas datas e clique em Kutools > Formato > Aplicar Formato de Data. O seguinte diálogo aparecerá:
go to the Apply Date Formatting dialog and set the options

2. Na caixa de diálogo Aplicar Formato de Data, escolha o estilo de formatação correspondente ao seu requisito de contagem (como mês, ano, dia da semana, dia, etc.), e depois clique em OK. Por exemplo, selecione "Mar" para contar por mês.

3. Enquanto a coluna de data ainda está selecionada, clique em Kutools > Para Real. Este passo converte todas as datas para os valores exibidos (por exemplo, nomes de meses) para facilitar o agrupamento nas etapas subsequentes.
clcik To Actual to convert dates to the month names

4. Em seguida, selecione o intervalo contendo seus nomes de grupos convertidos e dados associados (como colunas de Valor ou Categoria). Vá para Kutools > Texto > Mesclar Linhas Avançado. Você verá a seguinte interface:
go to the Advanced Combine Rows feature and set options

5. Na caixa de diálogo Mesclar Linhas Avançado:
(1) Defina sua coluna de data como a Chave Primária para agrupar por ela.
(2) Para a coluna que deseja contar (por exemplo, Valor), defina o cálculo para Contagem.
(3) Você pode escolher outros métodos de agregação ou combinação para outras colunas (por exemplo, combine nomes de frutas com uma vírgula).
(4) Clique em OK para processar.

Seus dados agora exibirão a contagem de registros por período selecionado. Veja a captura de tela abaixo:
the number of occurrences per month is counted

Kutools para Excel - Potencialize o Excel com mais de 300 ferramentas essenciais. Aproveite recursos de IA permanentemente gratuitos! Obtenha Agora

Comparado às fórmulas manuais, o Kutools simplifica o processo, reduz erros humanos e é altamente adequado para usuários que frequentemente realizam contagens agrupadas e desejam evitar a complexidade de fórmulas. Funciona bem tanto para conjuntos de dados pequenos quanto grandes. Lembre-se de fazer backup dos seus dados antes de converter ou combinar linhas em massa.

Conte o número de ocorrências por ano/mês/trimestre/hora com Tabela Dinâmica

As Tabelas Dinâmicas oferecem uma maneira poderosa e interativa de analisar grandes conjuntos de dados e resumir ocorrências por uma ou mais dimensões de tempo — ano, mês, trimestre, hora, etc. — tudo com uma interface fácil de clicar e arrastar. As Tabelas Dinâmicas também permitem rápida reconfiguração e filtragem, tornando-as ideais para explorar padrões de dados ou preparar relatórios gerenciais.

1. Selecione sua tabela de dados, depois vá para Inserir > Tabela Dinâmica. A caixa de diálogo Criar Tabela Dinâmica aparece.
screenshot of clicking Insert > PivotTable

2. No diálogo, especifique onde colocar a Tabela Dinâmica (nova planilha ou local existente, como célula E1), depois clique em OK.
set options in the Create PivotTable dialog box

3. No painel Campos da Tabela Dinâmica, arraste o campo Data para a seção Linhas e o campo Valor (ou campo alvo) para a seção Valores. Por padrão, os valores podem ser somados.

A Tabela Dinâmica aparece como na captura de tela abaixo:
drag the column names to the corresponding fields

4. Altere o cálculo de valor para uma contagem clicando com o botão direito no título da coluna de valor (por exemplo, Soma de Valor), depois escolhendo Resumir Valores Por > Contagem.
select Summarize Values By > Count from the right-clicking menu

5. Para agrupar por períodos adicionais (como mês, ano ou trimestre), clique com o botão direito em qualquer célula na coluna Rótulos de Linha, selecione Agrupar, e na caixa de diálogo, escolha os critérios de agrupamento (como Meses, Anos ou Trimestres), depois clique em OK.
select Group from the right-clicking menu and choose month and year

Sua tabela agora exibe contagens pelos períodos selecionados:
the number of occurrences per year and month is counted

Nota: Agrupar por múltiplos períodos (por exemplo, mês e ano) adicionará níveis extras em Rótulos de Linha. Você pode reorganizar campos de agrupamento (por exemplo, mover Anos abaixo de Data) no painel Campos da Tabela Dinâmica para ajustar sua visão de resumo.
The count of monthly records is calculated by grouping them by month and year.

Essa abordagem é ideal para grandes conjuntos de dados dinâmicos, exigindo agrupamento periódico, comparação e resumo. É menos adequada para cálculos rápidos e ad hoc em nível de célula ou para usuários que não estão familiarizados com recursos de Tabela Dinâmica.


Macro VBA: Contagem de ocorrências por ano/trimestre/mês/semana com resumo automatizado

Quando você precisa gerar repetidamente resumos de ocorrências agrupadas por vários períodos de tempo, ou deseja automatizar o processo de contagem para maior eficiência — especialmente em grandes conjuntos de dados — uma macro VBA personalizada pode ser uma solução eficaz. Esse método é altamente adequado se você processa dados regularmente, produz tabelas de resumo periódicas ou precisa de agrupamentos personalizados (como trimestres fiscais ou semanas) que não são facilmente tratados por fórmulas ou Tabelas Dinâmicas.

Passos completos da operação:

  • Faça backup de sua pasta de trabalho antes de executar qualquer macro pela primeira vez.
  • Clique em Desenvolvedor > Visual Basic para abrir o editor VBA.
  • Clique em Inserir > Módulo, depois copie e cole o código abaixo na janela Módulo.
Sub CountOccurrencesByPeriod()
    Dim lastRow As Long
    Dim ws As Worksheet, summaryWs As Worksheet
    Dim periodType As String
    Dim dict As Object, key As Variant
    Dim dateRange As Range, cell As Range
    Dim outputRow As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set ws = Application.ActiveSheet
    Set dateRange = Application.InputBox("Select date range:", xTitleId, Selection.Address, Type:=8)
    
    periodType = Application.InputBox("Count by (Year/Quarter/Month/Week):", xTitleId, "Month", Type:=2)
    
    If dateRange Is Nothing Or periodType = "" Then Exit Sub
    
    Set dict = CreateObject("Scripting.Dictionary")
    
    For Each cell In dateRange
        If IsDate(cell.Value) Then
            Select Case LCase(periodType)
                Case "year"
                    key = Year(cell.Value)
                Case "quarter"
                    key = "Q" & WorksheetFunction.RoundUp(Month(cell.Value) / 3, 0) & " " & Year(cell.Value)
                Case "month"
                    key = Format(cell.Value, "yyyy-mm")
                Case "week"
                    key = "W" & WorksheetFunction.WeekNum(cell.Value) & " " & Year(cell.Value)
                Case Else
                    key = Format(cell.Value, "yyyy-mm")
            End Select
            
            If dict.Exists(key) Then
                dict(key) = dict(key) + 1
            Else
                dict.Add key, 1
            End If
        End If
    Next cell
    
    Set summaryWs = Worksheets.Add(After:=ws)
    summaryWs.Name = "Occurrence_Summary"
    
    summaryWs.Range("A1").Value = "Period"
    summaryWs.Range("B1").Value = "Occurrences"
    
    outputRow = 2
    For Each key In dict.Keys
        summaryWs.Cells(outputRow, 1).Value = key
        summaryWs.Cells(outputRow, 2).Value = dict(key)
        outputRow = outputRow + 1
    Next key
    
    MsgBox "Summary completed in sheet 'Occurrence_Summary'.", vbInformation
End Sub

Após inserir o código:

  • Retorne ao Excel e pressione Alt+F8, selecione ContagemOcorrênciasPorPeríodo e clique em Executar.
  • Um prompt pedirá para selecionar o intervalo de datas para análise. Selecione a coluna ou intervalo relevante contendo suas datas.
  • Um segundo prompt perguntará por qual período agrupar: digite "Ano", "Trimestre", "Mês" ou "Semana" (não diferencia maiúsculas e minúsculas).
  • A macro gerará uma nova planilha chamada Resumo_Ocorrências listando cada período e a contagem de ocorrências dentro dele.

Solução de problemas e dicas:

  • Se você encontrar um aviso de segurança de macro, ajuste as configurações de macro em Arquivo > Opções > Central de Confiabilidade > Configurações de Macro.
  • Certifique-se de que sua coluna de data contém valores válidos de data do Excel; strings de texto ou formatos mistos podem produzir contagens imprecisas ou erros.
  • A macro é flexível — digite "Trimestre" para agrupar contagens rapidamente por ano e trimestre, ou "Semana" para resumir em base semanal.
  • Se você deseja personalizar a saída (por exemplo, adicionar mais detalhes), pode modificar a macro para processar colunas adicionais ou regras de cálculo.

Essa solução é robusta para relatórios em lote ou análises periódicas, mas presume familiaridade básica com VBA e gestão adequada da pasta de trabalho. Se você quiser combinar resumo visual, considere usar Tabelas Dinâmicas e VBA juntas.


Conte o número de ocorrências por semana com uma fórmula NÚMSEMANA

Contar a frequência de entradas ou eventos por semana é um requisito comum no rastreamento de vendas, gerenciamento de projetos e alocação de recursos. O Excel fornece a função NÚMSEMANA, que retorna o número da semana de uma data específica dentro de um ano, facilitando o agrupamento de dados em base semanal usando fórmulas.

Cenário aplicável: Você tem uma lista de datas (por exemplo, dados de vendas ou presença) e deseja contar quantas entradas caem em cada semana do ano. Esse método funciona bem para análises contínuas e quando seus dados mudam frequentemente, pois a contagem se atualiza automaticamente.

1. Em uma coluna vazia (por exemplo, B2), insira a seguinte fórmula para calcular o número da semana para cada data na coluna A:

=WEEKNUM(A2,1)

O segundo argumento ("1") indica que as semanas começam no domingo (altere para "2" se desejar que as semanas comecem na segunda-feira). Copie esta fórmula para baixo em todas as linhas dos seus dados de data.

2. Faça uma lista dos números de semanas que deseja resumir (por exemplo, 1,2,3,…). Em outra célula em branco (digamos, D2), use a seguinte fórmula para contar as ocorrências para um número de semana específico (assumindo que B2:B24 liste os números de semanas e D2 contenha a semana a ser pesquisada):

=COUNTIF($B$2:$B$24, D2)

Após pressionar Enter, arraste essa fórmula para baixo para sua lista de números de semanas. Cada resultado mostra a contagem de ocorrências para aquela semana.

Dicas e precauções:

  • Se você deseja contar por ano e semana, para distinguir entradas em anos diferentes, use:
    =SUMPRODUCT((YEAR($A$2:$A$24)=$F$2)*(WEEKNUM($A$2:$A$24,1)=G2))
    Onde F2 é o ano alvo e G2 é o número da semana alvo. Ajuste os intervalos de coluna e as referências conforme necessário.
  • A numeração de semanas da função NÚMSEMANA pode variar dependendo da configuração (sistema, EUA/ISO, seu dia de início escolhido).
  • Se usar números de semanas ISO (padrão europeu, semanas começando na segunda-feira e a primeira semana é a que contém a primeira quinta-feira), use =NÚMSEMANAISO(A2) (para Excel 2013 e posterior).
  • Sempre certifique-se de que todos os seus valores de data estejam em formato de data válido do Excel para resultados precisos.

Esse método é flexível para tabelas de dados dinâmicos e pode ser adaptado para dashboards, resumos periódicos e quando você deseja cruzar contagens por semana sem usar Tabelas Dinâmicas ou complementos adicionais.


Demonstração: Conte o número de ocorrências por ano/mês/dia da semana/dia

 

Artigos relacionados:

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!