> ## Documentation Index
> Fetch the complete documentation index at: https://ajuda.medemerge.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# CountIf

> Conta as linhas em que uma condição é verdadeira: o "contar se" da planilha.

`CountIf` conta as linhas em que uma condição é verdadeira. É a função das contagens com critério, e também o numerador das taxas.

## Sintaxe

```text theme={null}
CountIf(condição)
```

| Argumento | O que é |
| - | - |
| `condição` | Uma comparação ou função que dá verdadeiro ou falso, como `[setor] = "PS"` ou `notEmpty([codigo_internacao])`. |

`CountIf` é uma agregação: ela entra numa métrica de **Resumir**.

## Exemplos

Os exemplos usam esta tabela de amostra. As colunas são fictícias.

| setor | minutos\_espera | codigo\_internacao |
| - | - | - |
| PS | 45 | 1021 |
| PS | 12 | *vazio* |
| UTI | 5 | 1022 |
| PS | 38 | *vazio* |

### Uma condição

```text theme={null}
CountIf([minutos_espera] > 30)
```

Resultado: **2**, as esperas de 45 e 38 minutos.

### Várias condições

Para exigir todas as condições, junte-as com `AND`. Para aceitar qualquer uma, com `OR`.

```text theme={null}
CountIf([setor] = "PS" AND [minutos_espera] > 30)
```

Resultado: **2**.

```text theme={null}
CountIf([setor] = "UTI" OR [minutos_espera] > 40)
```

Resultado: **2**, a linha da UTI e a espera de 45 minutos.

Ao misturar `AND` e `OR`, use parênteses: `CountIf([setor] = "PS" AND ([minutos_espera] > 40 OR [minutos_espera] < 15))`.

### Contar o que está preenchido

```text theme={null}
CountIf(notEmpty([codigo_internacao]))
```

Resultado: **2**. `notEmpty` trata como vazio tanto o valor nulo quanto o texto em branco.

### Uma taxa

Divida pela contagem de todas as linhas:

```text theme={null}
CountIf(notEmpty([codigo_internacao])) / Count()
```

Resultado: **0,5**. A divisão devolve a fração. Para ver **50%**, escolha **Percentual (× 100)** em **Visualização → Formato**.

<Tip>
  `Share(notEmpty([codigo_internacao]))` é a mesma conta, numa função só.
</Tip>

### Por grupo

Com um agrupamento por `setor`, a mesma métrica é contada em cada grupo:

```text theme={null}
CountIf([minutos_espera] > 30)
```

| setor | resultado |
| - | - |
| PS | 2 |
| UTI | 0 |

## Limitações

* Só cabe em **Resumir**. Para marcar as linhas uma a uma, use `case` numa coluna personalizada.
* A condição precisa dar verdadeiro ou falso. `CountIf([minutos_espera])` não é uma condição.
* A linha em que a condição dá vazio não conta. `CountIf([convenio] != "SUS")` deixa de fora as linhas sem convênio: para incluí-las, use `CountIf([convenio] != "SUS" OR isNull([convenio]))`.

## Relacionadas

* [Count](/expressoes/funcoes#count): todas as linhas.
* [SumIf](/expressoes/funcoes#sumif): soma com critério.
* [DistinctIf](/expressoes/funcoes#distinctif): valores diferentes, com critério.
* [Share](/expressoes/funcoes#share): a fração das linhas em que a condição vale.
* Em SQL, `SUM(CASE WHEN condição THEN 1 ELSE 0 END)`. Na planilha, `CONT.SE`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.