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-08-06

No trabalho diário, a análise de dados frequentemente exige resumir o número de registros ou eventos por períodos de tempo, como contar quantas vendas ocorreram em cada mês, acompanhar 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 tão 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 diferentes períodos de tempo (ano, trimestre, mês, semana, dia da semana) no Excel, ajudando você a resumir e analisar dados baseados no tempo de forma eficiente e evitar erros de contagem manual.


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 juntamente com SOMARPRODUTO, você pode calcular diretamente contagens por ano, mês ou qualquer combinação desses, tornando seu resumo preciso e atualizado automaticamente conforme os dados de origem mudam. Essa abordagem funciona bem na maioria das tarefas de análise rotineiras para conjuntos de dados pequenos a médios.

Selecione uma célula em branco onde deseja exibir o resultado da contagem e 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 ajustarem 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 datas e quando você deseja que os resultados sejam atualizados automaticamente ao modificar os dados. No entanto, trabalhar com várias 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, poderá 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 & mês ou mês & dia, sem precisar construir fórmulas complexas. Essa abordagem é especialmente eficiente para usuários que procuram uma solução visual e orientada por 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. A seguinte caixa de 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 clique em OK. Por exemplo, selecione "Mar" para contar por mês.

3. Enquanto a coluna de data ainda estiver 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 grupo 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 você 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 a fórmulas manuais, o Kutools simplifica o processo, reduz erros humanos e é altamente adequado para usuários que frequentemente realizam contagens agrupadas e querem 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 e vá para Inserir > Tabela Dinâmica. A caixa de diálogo Criar Tabela Dinâmica aparece.
screenshot of clicking Insert > PivotTable

2. Na caixa de diálogo, especifique onde colocar a Tabela Dinâmica (nova planilha ou local existente, como célula E1) e 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 conforme a 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) e 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) e 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 nos 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 conjuntos de dados grandes e dinâmicos, que requerem agrupamento periódico, comparação e resumo. É menos adequada para cálculos rápidos em nível de célula ou para usuários que não estão familiarizados com os recursos da Tabela Dinâmica.


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

Quando você precisa gerar repetidamente resumos de ocorrências agrupadas por diferentes períodos de tempo ou deseja automatizar o processo de contagem para maior eficiência—especialmente em grandes conjuntos de dados—uma macro personalizada VBA 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:

  • Volte para o Excel e pressione Alt+F8, selecione ContarOcorrênciasPorPeríodo e clique em Executar.
  • Um prompt pedirá que você selecione 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: insira "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 contenha valores de data válidos do Excel; strings de texto ou formatos mistos podem produzir contagens imprecisas ou erros.
  • A macro é flexível—insira "Trimestre" para agrupar contagens rapidamente por ano e trimestre, ou "Semana" para resumir semanalmente.
  • 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 resumos visuais, considere usar ambas as Tabelas Dinâmicas e VBA.


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 acompanhamento 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 determinada data dentro de um ano, facilitando o agrupamento de dados semanalmente 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 é atualizada 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 (mude para "2" se desejar que as semanas comecem na segunda-feira). Copie essa 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 entre 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 referências conforme necessário.
  • A numeração da semana da função NÚMSEMANA pode variar dependendo da configuração (sistema, EUA/ISO, seu dia de início escolhido).
  • Se estiver usando números de semana ISO (padrão europeu, semanas começando na segunda-feira e a primeira semana é aquela com a primeira quinta-feira), use =NUMSEMANAISO(A2) (para Excel 2013 e posterior).
  • Sempre certifique-se de que todos os seus valores de data estejam no formato de data válido do Excel para obter resultados precisos.

Esse método é flexível para tabelas de dados dinâmicas e pode ser adaptado para dashboards, resumos periódicos e quando você deseja tabular contagens cruzadas por semana sem usar Tabelas Dinâmicas ou add-ins 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

🤖 Kutools AI Aide: 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 |Acionar Funções Aprimoradas
Recursos populares: Encontrar, Destacar ou Marcar Duplicados|Excluir Linhas em Branco|Combinar Colunas ou Células 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 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 o Estado de Visibilidade de 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
Use o Kutools no idioma de sua preferência – compatível com Inglês, Espanhol, Alemão, Francês, Chinês e mais de40 outros!

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!