Pesquisas em Fórmulas do Power Pivot

Aplica-se A
Excel para Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

Uma das funcionalidades mais avançadas do Power Pivot é a capacidade de criar relações entre tabelas e, em seguida, utilizar as tabelas relacionadas para pesquisar ou filtrar dados relacionados. Pode obter valores relacionados de tabelas utilizando a linguagem de fórmulas fornecida com o Power Pivot, Data Analysis Expressions (DAX). O DAX utiliza um modelo relacional e, como tal, pode obter com facilidade e precisão valores relacionados ou correspondentes noutra tabela ou coluna. Se estiver familiarizado com a função PROCV no Excel, esta funcionalidade no Power Pivot é semelhante, mas muito mais fácil de implementar.

Pode criar fórmulas que efetuem pesquisas como parte de uma coluna calculada ou como parte de uma medida para utilizar numa Tabela Dinâmica ou num Gráfico Dinâmico. Para mais informações, consulte os seguintes tópicos:

Campos Calculados no Power Pivot

Colunas Calculadas no Power Pivot

Esta secção descreve as funções do DAX que são fornecidas para pesquisa, juntamente com alguns exemplos de como utilizar as funções.

Nota

Dependendo do tipo de operação de pesquisa ou fórmula de pesquisa que pretende utilizar, poderá ter de criar primeiro uma relação entre as tabelas.

Compreender as funções de pesquisa

A capacidade de procurar dados correspondentes ou relacionados de outra tabela é particularmente útil em situações em que a tabela atual tem apenas algum tipo de identificador, mas os dados de que necessita (como o preço do produto, nome ou outros valores detalhados) estão armazenados numa tabela relacionada. Também é útil quando existem várias linhas noutra tabela relacionadas com a linha ou o valor atual. Por exemplo, pode obter facilmente todas as vendas associadas a uma determinada região, loja ou vendedor.

Ao contrário das funções de pesquisa do Excel, como PROCV, que são baseadas em matrizes, ou PROC, que obtém o primeiro de vários valores correspondentes, o DAX segue as relações existentes entre tabelas unidas por chaves para obter o único valor relacionado que corresponde exatamente. O DAX também pode obter uma tabela de registos relacionados com o registo atual.

Nota

Se estiver familiarizado com bases de dados relacionais, pode considerar as pesquisas no Power Pivot como semelhantes a uma instrução subselect aninhada no Transact-SQL.

A função RELATED devolve um único valor de outra tabela relacionada com o valor atual na tabela atual. Pode especificar a coluna que contém os dados pretendidos e a função segue as relações existentes entre tabelas para obter o valor da coluna especificada na tabela relacionada. Em alguns casos, a função tem de seguir uma cadeia de relações para obter os dados.

Por exemplo, suponha que tem uma lista dos envios atuais no Excel. No entanto, a lista contém apenas um número de ID de funcionário, um número de ID de encomenda e um número de ID de transitário, dificultando a leitura do relatório. Para obter as informações adicionais que pretende, pode converter essa lista numa tabela ligada do Power Pivot e, em seguida, criar relações para as tabelas Funcionário e Revendedor, fazendo corresponder o IDDoEmpregado ao campo ChaveDeColaborador e o IDDrevendedor ao campo ChaveDeRevendedor.

Para apresentar as informações de pesquisa na tabela ligada, adicione duas novas colunas calculadas, com as seguintes fórmulas:

= RELATED('Empregados'[EmployeeName])
= RELATED('Resellers'[CompanyName])

Envios de hoje antes da consulta

IDDaEncomenda N.º de Empregado IDDaRevendedor
100314 230 445
100315 15 445
100316 76 108

Tabela Funcionários

N.º de Empregado Empregado Revendedor
230 Kuppa Vamsi Sistemas de Ciclo Modular
15 Pilar Ackeman Sistemas de Ciclo Modular
76 Kim Ralls Bicicletas Associadas

Envios de hoje com pesquisas

IDDaEncomenda N.º de Empregado IDDaRevendedor Empregado Revendedor
100314 230 445 Kuppa Vamsi Sistemas de Ciclo Modular
100315 15 445 Pilar Ackeman Sistemas de Ciclo Modular
100316 76 108 Kim Ralls Bicicletas Associadas

A função utiliza as relações entre a tabela ligada e a tabela Funcionários e Revendedores para obter o nome correto para cada linha no relatório. Também pode utilizar valores relacionados em cálculos. Para obter mais informações e exemplos, consulte Função RELATED.

A função RELATEDTABLE segue uma relação existente e devolve uma tabela que contém todas as linhas correspondentes da tabela especificada. Por exemplo, suponhamos que pretende saber quantas encomendas cada revendedor efetuou este ano. Pode criar uma nova coluna calculada na tabela Revendedores que inclua a seguinte fórmula, que pesquise registos de cada revendedor na tabela ResellerSales_USD e conte o número de encomendas individuais efetuadas por cada revendedor. 

=COUNTROWS(RELATEDTABLE(ResellerSales_USD))

Nesta fórmula, a função RELATEDTABLE obtém primeiro o valor de ResellerKey para cada revendedor na tabela atual. (Não precisa de especificar a coluna ID em nenhum ponto da fórmula, porque o Power Pivot utiliza a relação existente entre as tabelas.) Em seguida, a função RELATEDTABLE obtém todas as linhas da tabela ResellerSales_USD relacionadas com cada revendedor e conta as linhas. Se não existir nenhuma relação (direta ou indireta) entre as duas tabelas, obterá todas as linhas da tabela ResellerSales_USD.

Para o revendedor Sistemas de Ciclo Modular em nosso banco de dados de exemplo, há quatro pedidos na tabela vendas, portanto, a função retorna 4. Para Bicicletas Associadas, o revendedor não tem vendas, pelo que a função devolve um espaço em branco.

Revendedor Registos na tabela de vendas deste revendedor
Sistemas de Ciclo Modular ID de Revendedor
445
445
445
445
ID de Revendedor
Bicicletas Associadas

Nota

Uma vez que a função RELATEDTABLE devolve uma tabela, e não um único valor, tem de ser utilizada como um argumento para uma função que efetue operações em tabelas. Para obter mais informações, consulte Função RELATEDTABLE.

Início da Página