Artigo · Power Query e DAX · 3 min de leitura

UDF DAX no Power BI: criando suas próprias funções

Por Paulo André Jesus · Publicado em 16/09/2025 · Atualizado em 02/11/2026

Você já se pegou repetindo a mesma fórmula DAX em vários lugares, copiando e colando como se fosse receita de bolo? Pois é... As UDFs (User Defined Functions) em DAX chegaram como prévia em setembro de 2025. Hoje estão em disponibilidade geral no Power BI Desktop e no Serviço, desde a atualização de junho de 2026 (versão 2.155.756.0). O nosso "Ctrl+C + Ctrl+Fun" deixou a prévia para trás.

Mas o que é uma UDF?

UDF significa User Defined Function, ou seja, Função Definida pelo Usuário. É como criar sua própria função personalizada, do jeitinho que você precisa, em vez de depender apenas das funções nativas do DAX.

No Excel, você já tem milhares de funções prontas, mas e se quisesse uma MODE() (Moda) no DAX, que não existe oficialmente? Agora você pode criá-la e usá-la em qualquer medida ou cálculo do modelo.

Como usar UDF DAX no Power BI

Não é mais necessário ativar UDFs em Recursos de Pré-visualização. Use uma versão atualizada e um modelo com nível de compatibilidade 1702 ou superior.

UDFs são objetos do modelo: aparecem no explorador de modelos em Model explorer > Functions. Você pode defini-las no DAX query view, no TMDL view ou no modo Modelo. Elas aceitam parâmetros opcionais com valor padrão e podem ser descritas com comentários ///.

Se o menu da sua instalação estiver diferente, confira a versão e a documentação oficial. O caminho antigo de ativação era da prévia, não uma exigência atual.

Como funciona na prática?

A sintaxe é quase a mesma de uma medida, mas dentro de um bloco DEFINE FUNCTION.

Exemplo simples: a boa e velha Regra de Três

DAX
DEFINE
    FUNCTION RegraDeTres =
        (
            pNumero1: variant,
            pNumero2: variant,
            pNumero3: variant
        ) =>
            pNumero2 * pNumero3 / pNumero1

EVALUATE
ROW (
    "Resultado", RegraDeTres ( 100, 50, 60 )
)

O que está acontecendo aqui?

  • Criamos a função RegraDeTres que recebe 3 parâmetros.
  • Aplicamos a continha clássica pNumero2 * pNumero3 / pNumero1.
  • Chamamos a função como se fosse qualquer outra nativa do DAX.

Por que isso é revolucionário?

  • Reuso: crie uma vez e use em várias medidas.
  • Padronização: equipe inteira usa a mesma lógica, sem "cada um com seu DAXzinho".
  • Organização: seu modelo fica mais limpo, sem aquele mar de medidas repetidas.
  • Documentação: você pode manter uma "biblioteca de funções" no próprio modelo.

Exemplos úteis de UDFs

  • MODE.SNGL() → para calcular a moda de uma coluna (valor mais frequente).
  • TotalHoras() → para transformar horas trabalhadas no formato [hh]:mm:ss.
  • KPI_BateuMeta() → função que retorna automaticamente uma medalha (ouro, prata, bronze ou participação) para seus indicadores.

UDFs prontas em DAX e M estão na Code Library da Biblioteca.

Documentação oficial da Microsoft: Funções definidas pelo usuário em DAX

Conclusão

As UDFs em DAX são um divisor de águas no Power BI. Se antes o DAX parecia uma coleção de peças de Lego fixas, agora você pode criar seus próprios bloquinhos personalizados e montar modelos ainda mais poderosos.

E você, já pensou qual seria a primeira função personalizada que criaria no seu Power BI?

Publicado originalmente no LinkedIn. Ver a publicação original

Continue aprendendo

Falar sobre treinamento in-company