Imagina um sistema de acompanhamento de projetos com 60 tarefas, cada uma com uma caixa de seleção que alguém marca à medida que o trabalho vai sendo concluído. O gestor quer ver um único número no topo: quantas estão realmente concluídas. Então, insere uma fórmula COUNTIF, aponta-a para as caixas de seleção e obtém zero como resultado. Sempre. Mesmo com metade das caixas claramente marcadas.
Eis a parte que quase todos os guias ignoram. Uma caixa de seleção numa folha de cálculo não é um dado — é um objeto flutuante, como uma forma ou uma imagem, e uma fórmula não consegue interpretá-la. Para que qualquer contagem funcione, cada caixa de seleção tem de estar ligada a uma célula, para que, ao marcá-la, seja escrito algo legível por baixo. É esse o verdadeiro obstáculo. É por isso que as dicas do COUNTIF não resultam para a maioria das pessoas que procuram como contar caixas de seleção no Excel e acabam por voltar logo ao Google.
Assim que a ligação estiver resolvida, a contagem em si demora cerca de dez segundos. Por isso, vamos resolver primeiro o pré-requisito e, depois, aplicar a fórmula.
=COUNTIF(range,TRUE) ` para contar as que estão marcadas num instante. Porque é que os conselhos habituais não resultam
A maioria dos artigos começa com esta fórmula. «Digita =COUNTIF(B2:B60,TRUE) », dizem eles, e seguem em frente, partindo do princípio de que as caixas já preenchem uma célula. Para uma pequena parte dos leitores que configuram tudo com cuidado, tudo bem. Todos os outros ficam com um zero redondo e sem qualquer explicação.
A razão é estrutural. Uma caixa de seleção do Form Control ou do ActiveX fica numa camada de desenho por cima da grelha. Tem um estado visual, marcado ou desmarcado, mas esse estado está associado ao objeto, não a nenhuma célula para a qual a tua fórmula possa apontar. O Excel trata tudo isso como decoração até lhe dizeres o contrário.
As versões mais recentes complicam ainda mais as coisas. O Excel para o Microsoft 365 adicionou, em 2024, uma caixa de seleção nativa que se insere diretamente numa célula e armazena TRUE ou FALSE ali mesmo, sem necessidade de ligação. Mas milhões de pastas de trabalho ainda usam as caixas de controlo de formulário mais antigas, e muita gente usa o Excel 2019 ou 2021, onde essa opção nativa não existe. A questão é que, se as tuas caixas foram adicionadas à maneira antiga, ou herdadas do ficheiro de outra pessoa, a ligação não é opcional.
Ligar uma caixa de seleção a uma célula para que esta devolva TRUE ou FALSE
É este o passo que faz com que toda a abordagem das caixas de seleção «verdadeiro/falso» no Excel funcione. Quando uma caixa de seleção ligada está marcada, a sua célula de destino mostra «VERDADEIRO». Se estiver desmarcada, mostra «FALSO». São esses valores que a fórmula tem em conta.
Eis como associar uma caixa de seleção a uma célula do Excel para uma única caixa de seleção do Form Control:
- Clica com o botão direito do rato na caixa de seleção e escolhe «Formatar controlo».
- Abre o separador «Controlo ».
- No campo «Ligação à célula », clica na célula onde queres que o resultado seja inserido (normalmente, a célula logo a seguir ou ao lado da caixa).
- Clica em OK.
Marca a caixa agora e a célula associada passa a TRUE. Desmarca-a e fica FALSE. Repete isto para cada caixa de seleção, associando cada uma à sua própria linha, para que os resultados fiquem alinhados numa coluna organizada.
O tutorial do How-To Geek sobre como contar caixas de seleção no Microsoft Excel confirma a mesma sequência: primeiro criar a ligação, depois contar. Saltar a ligação é o erro mais comum de todos, e é por isso que os guias que começam pela fórmula acabam por confundir as pessoas.
O método em massa para dezenas de caixas de seleção
Ligar 60 caixas, uma a uma, através do Controlo de Formato é uma chatice. Ninguém quer clicar com o botão direito do rato sessenta vezes. Existem duas formas mais rápidas, dependendo de como a tua folha está organizada.
Se as tuas caixas de seleção já estiverem bem alinhadas numa coluna, o truque mais rápido é ligar a primeira manualmente e, depois, ir descendo. Só que o Excel não aumenta automaticamente as ligações das células quando copias uma caixa de controlo de formulário — o que significa que, na prática, para ligar várias caixas de uma vez, é preciso usar uma pequena macro.
Abre o editor de VBA com Alt + F11, insere um módulo e cola algo como isto:
Sub LinkCheckboxes()
Dim cb As CheckBox
For Each cb In ActiveSheet.CheckBoxes
cb.LinkedCell = cb.TopLeftCell.Offset(0, 1).Address
Next cb
End Sub
Executa isto uma vez e todas as caixas de seleção do Form Control ficam ligadas à célula uma coluna à direita. Ajusta o Offset(0, 1) se quiseres que o resultado apareça noutro sítio: Offset(0, -1) escreve à esquerda, Offset(0, 0) escreve na célula diretamente atrás da caixa. O guia do ExtendOffice sobre somar e contar caixas de seleção marcadas aborda uma abordagem semelhante com macros para folhas maiores.
Estás a criar o tracker do zero no Microsoft 365? Pula tudo isto. Seleciona o teu intervalo, vai a «Inserir» > «Caixa de seleção», e o Excel insere caixas de seleção nativas que já têm os valores TRUE/FALSE nas células. Sem ligações, sem macros. O tutorial do DataCamp sobre como adicionar, utilizar e contar caixas de seleção explica em detalhe a versão nativa.
Como contar caixas de seleção no Excel com a função COUNTIF
Agora vem a parte fácil. Com a tua coluna de ligação cheia de valores TRUE e FALSE, basta uma fórmula para fazer a contagem.
Para contar as caixas de seleção marcadas, o Excel não precisa de nada mais complicado do que:
=COUNTIF(B2:B60,TRUE)
Isso devolve o número de caixas assinaladas. Substitui TRUE por FALSE para contares as que não estão assinaladas:
=COUNTIF(B2:B60,FALSE)
Queres saber a percentagem de conclusão para aquele acompanhamento de projetos? Divide o número de itens marcados pelo total:
=COUNTIF(B2:B60,TRUE)/COUNTA(B2:B60)
Formata o resultado como uma percentagem e já tens uma indicação de progresso em tempo real que se atualiza assim que alguém marcar uma caixa de seleção. O padrão «COUNTIF» com caixas de seleção é mesmo assim tão simples, desde que os valores a contar já existam.
Uma nota sobre os tipos de dados. As ligações dos controlos de formulário escrevem as palavras literais TRUE e FALSE como valores booleanos, por isso COUNTIF(range,TRUE) funciona bem. Mas se uma célula ligada mostrar o texto « "TRUE" » entre aspas, em vez de um valor booleano real, a contagem pode falhar. Quando isso acontecer, corrige a ligação ou faz a correspondência do texto de forma explícita. A receita do «Excel Cookbook» para contar caixas de seleção marcadas tem uma boa explicação sobre esta armadilha entre valores booleanos e texto.
Resolução de problemas comuns
Há algumas coisas que confundem as pessoas, mesmo quando os links parecem estar corretos.
A função COUNTIF continua a dar zero. É provável que as caixas nunca tenham sido realmente ligadas, ou que a macro tenha apontado as ligações para a coluna errada. Clica numa caixa de seleção, marca-a e vê se alguma célula próxima muda para TRUE. Não muda nada? Então a ligação não está definida.
A contagem está errada em alguns. Verifica se há caixas de seleção ocultas ou duplicadas, sobrepostas umas às outras. Se arrastares ligeiramente uma caixa, podes revelar uma segunda que está escondida por baixo, e ambas podem estar ligadas à mesma célula, o que faz com que o valor seja registado duas vezes.
Caixas de controlo nativas e de formulário misturadas. Se alguém tiver adicionado algumas caixas de seleção nativas do 365 ao lado das antigas do Form Control, a tua coluna de ligações pode conter uma mistura de valores booleanos dentro das células e células ligadas separadamente. Padroniza tudo para um único tipo antes de contares, ou o teu intervalo não vai ficar consistente.
Caixas copiadas sem os respetivos links. Ao copiar uma caixa de seleção de um controlo de formulário ligado, a ligação original é mantida, pelo que cinco cópias podem todas escrever na mesma célula. Executa novamente a macro de ligação após qualquer operação de copiar e colar em massa para reposicionar cada caixa na sua própria linha.
Perguntas frequentes
Porque é que a minha fórmula COUNTIF dá zero quando as caixas estão claramente assinaladas?
Porque as caixas de seleção não estão ligadas a células. Uma caixa de seleção flutuante mantém o seu estado marcado como uma propriedade do objeto, e não como dados que uma fórmula possa ler. Liga primeiro cada caixa a uma célula, para que esta registe TRUE ou FALSE; assim, a função COUNTIF terá valores reais para contar.
É mesmo preciso ter uma ligação no Excel para o Microsoft 365?
Não. A caixa de seleção nativa adicionada em 2024 guarda TRUE ou FALSE diretamente na sua célula, por isso podes aplicar a função COUNTIF ao intervalo de células imediatamente. A ligação só é necessária para as caixas de seleção mais antigas do Form Control e do ActiveX.
Posso contar as caixas de seleção sem usar nenhuma fórmula?
Podes fazê-lo, mais ou menos, usando um filtro ou dando uma olhadela na coluna dos links, mas isso vai contra o objetivo. Um simples =COUNTIF(range,TRUE) dá-te um número em tempo real e preciso que se atualiza automaticamente, o que a filtragem manual não faz.
Qual é a forma mais rápida de ligar 50 ou mais caixas de seleção?
Uma pequena macro VBA que percorre todas as caixas de seleção e define cada ligação para uma célula adjacente. Trata de dezenas de caixas de uma só vez, em vez de teres de clicar com o botão direito do rato em «Formatar Controlo» cinquenta vezes.
Será que a função COUNTIF funciona com a função SUM?
Sim. Se as tuas células ligadas tiverem os valores TRUE/FALSE, também podes usar a fórmula =SUMPRODUCT(--(B2:B60=TRUE)) para fazer a mesma contagem, o que algumas pessoas preferem para combinar com outras condições.
Conclusão
Tudo se resume a uma sequência que a maioria dos guias explica ao contrário. As caixas de seleção são objetos, não dados, até ligares cada uma delas a uma célula que devolva TRUE ou FALSE. Assim que essa coluna existir — criada manualmente, com uma macro ou através da caixa de seleção nativa do 365 —, uma simples fórmula =COUNTIF(range,TRUE) conta as caixas marcadas em segundos. Resolve o pré-requisito e a fórmula a que toda a gente recorre primeiro acaba por funcionar. É assim que se contam caixas de seleção no Excel sem teres de marcar cada uma manualmente.

