Applies ToExcel para Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016
O seu browser não suporta vídeo. Instale o Microsoft Silverlight, o Adobe Flash Player ou o Internet Explorer 9.

Adicione mais poder à sua análise de dados ao criar relações que amgnam diferentes tabelas. Uma relação é uma ligação entre duas tabelas que contêm dados: uma coluna em cada tabela é a base para a relação. Para perceber o motivo pelo qual as relações são úteis, imagine que controla dados de encomendas de clientes na sua empresa. Pode controlar todos os dados numa única tabela com uma estrutura como esta:

IDDoCliente

Nome

E-mail

TaxaDesconto

IDDaEncomenda

DataDaEncomenda

Produto

Quantidade

1

Andrade

jorge.andrade@contoso.com

0,05

256

07-01-2010

CD

11

1

Andrade

jorge.andrade@contoso.com

0,05

255

01-03-2010

Câmara SLR

15

2

Barbosa

paulo.barbosa@contoso.com

0,10

254

01-03-2010

Orçamento Editor de Vídeo

27

Esta abordagem pode funcionar, mas envolve o armazenamento de muitos dados redundantes, como o endereço de correio eletrónico do cliente para cada encomenda. O armazenamento é barato, mas se o endereço de correio eletrónico de um cliente for alterado, terá de garantir que atualiza todas as linhas relativas a esse cliente. Uma solução para este problema é dividir os dados em várias tabelas e definir relações entre essas tabelas. Esta é a abordagem utilizada em bases de dados relacionais como o SQL Server. Por exemplo, uma base de dados importada poderá representar dados de encomendas utilizando três tabelas relacionadas:

Clientes

[IDDoCliente]

Nome

E-mail

1

Andrade

jorge.andrade@contoso.com

2

Barbosa

paulo.barbosa@contoso.com

DescontosDeCliente

[IDDoCliente]

TaxaDesconto

1

0,05

2

0,10

Encomendas

[IDDoCliente]

IDDaEncomenda

DataDaEncomenda

Produto

Quantidade

1

256

07-01-2010

CD

11

1

255

01-03-2010

Câmara SLR

15

2

254

01-03-2010

Orçamento Editor de Vídeo

27

As relações existem num Modelo de Dados — um que cria explicitamente ou um que o Excel cria automaticamente em seu nome quando importa simultaneamente várias tabelas. Pode igualmente utilizar o suplemento Power Pivot para criar ou gerir o modelo. Consulte Criar um Modelo de Dados no Excel para obter detalhes.

Se utilizar o suplemento Power Pivot para importar tabelas a partir da mesma base de dados, o Power Pivot poderá detetar as relações entre as tabelas com base nas colunas entre [parênteses retos] e poderá reproduzir essas relações num Modelo de Dados criado em segundo plano. Para mais informações, consulte Deteção Automática e Inferência de Relações neste artigo. Se importar tabelas a partir de várias origens, poderá criar relações manualmente conforme descrito em Criar uma relação entre duas tabelas.

As relações são baseadas em colunas em cada tabela que contêm os mesmos dados. Por exemplo, pode relacionar uma tabela Clientes com uma tabela Encomendas se cada uma contiver uma coluna que armazene um ID de Cliente. No exemplo, os nomes das colunas são iguais, mas isto não é obrigatório. Uma poderia chamar-se IDDoCliente e outra NúmeroDeCliente, desde que todas as linhas da tabela Encomendas contenham um ID que também esteja armazenado na tabela Clientes.

Numa base de dados relacional, existem vários tipos de chaves. Normalmente, uma chave é uma coluna com propriedades especiais. A compreensão do objetivo de cada chave pode ajudar a gerir um Modelo de Dados de várias tabelas que forneça dados a um relatório de Tabela Dinâmica, Gráfico Dinâmico ou Power View.

Embora existam muitos tipos de chaves, estas são as mais importantes para o nosso objetivo aqui:

  • Chave primária: identifica exclusivamente uma linha numa tabela, como CustomerID na tabela Clientes .

  • Chave alternativa (ou chave candidata): uma coluna que não seja a chave primária exclusiva. Por exemplo, uma tabela Empregados poderá armazenar um ID de funcionário e um número de segurança social, sendo os dois exclusivos.

  • Chave externa: uma coluna que se refere a uma coluna exclusiva noutra tabela, tal como IDDoCliente na tabela Encomendas , que se refere a CustomerID na tabela Clientes.

Num Modelo de Dados, a chave primária ou a chave alternativa é chamada coluna relacionada. Se uma tabela tiver uma chave primária e uma chave alternativa, poderá utilizar uma das duas como base de uma relação entre tabelas. A chave externa é referenciada como coluna de origem ou apenas como coluna. No nosso exemplo, seria definida uma relação entre CustomerID na tabela Orders (a coluna) e CustomerID na tabela Customers (a coluna de pesquisa). Se importar dados a partir de uma base de dados relacional, o Excel escolhe por predefinição a chave externa a partir de uma tabela e a chave primária correspondente a partir da outra tabela. No entanto, pode utilizar qualquer coluna que tenha valores únicos para a coluna de referência.

A relação entre um cliente e uma encomenda é uma relação um-para-muitos. Cada cliente pode ter várias encomendas, mas uma encomenda não pode ter vários clientes. Outra relação de tabela importante é um-para-um. No nosso exemplo aqui, a tabela CustomerDiscounts , que define uma taxa de desconto única para cada cliente, tem uma relação um-para-um com a tabela Clientes.

Esta tabela mostra as relações entre as três tabelas (Clientes, CustomerDiscounts e Encomendas):

Relação

Tipo

Coluna de Referência

Coluna

Clientes-DescontosDeClientes

um-para-um

Clientes.IDDoCliente

DescontosClientes.IDDoCliente

Clientes-Encomendas

um-para-muitos

Clientes.IDDoCliente

Encomendas.IDDoCliente

Nota: As relações muitos-para-muitos não são suportadas num Modelo de Dados. Um exemplo de uma relação muitos-para-muitos é uma relação direta entre Products e Customers, na qual um cliente pode comprar muitos produtos e o mesmo produto pode ser comprado por muitos clientes.

Após a criação de qualquer relação, o Excel tem normalmente de recalcular todas as fórmulas que utilizem colunas de tabelas na relação recém-criada. O processamento pode demorar algum tempo, dependendo da quantidade dos dados e da complexidade das relações. Para obter mais detalhes, veja Recalcular Fórmulas.

Um Modelo de Dados pode ter várias relações entre duas tabelas. Para criar cálculos precisos, o Excel precisa de um único caminho de uma tabela para a seguinte. Consequentemente, só existe uma relação ativa entre cada par de tabelas de cada vez. Embora os outros estejam inativos, pode especificar uma relação inativa em fórmulas e consultas.

Na Vista de Diagrama, a relação ativa é uma linha sólida e as inativas são linhas tracejadas. Por exemplo, em AdventureWorksDW2012, a tabela DimDate contém uma coluna , DateKey, que está relacionada com três colunas diferentes na tabela FactInternetSales: OrderDate, DueDate e ShipDate. Se a relação ativa for a relação entre CódigoDeData e DataDaEncomenda, esta é a relação predefinida nas fórmulas, a menos que especifique outra.

Uma relação pode ser criada quando os seguintes requisitos são preenchidos:

Critérios

Descrição

Identificador Exclusivo para Cada Tabela

Cada tabela tem de ter uma coluna única que identifique exclusivamente cada linha dessa tabela. Esta coluna é frequentemente chamada chave primária.

Colunas de Referência Exclusivas

Os valores de dados existentes na coluna de referência têm de ser exclusivos. Por outras palavras, a coluna não pode conter duplicados. Num Modelos de Dados, os nulos e as cadeias vazias são equivalente a um valor em branco, que é um valor de dados distinto. Isto significa que não pode ter vários valores nulos na coluna de referência.

Tipos de Dados Compatíveis

Os tipos de dados existentes nas colunas de origem e de pesquisa têm de ser compatíveis. Para obter mais informações sobre tipos de dados, veja Tipos de dados suportados em Modelos de Dados.

No Modelo de Dados, não é possível criar uma relação entre tabelas se a chave for uma chave composta. Está também restringido a criar relações um-para-um ou um-para-muitos. Os outros tipos de relação não são suportados.

Chaves Compostas e Colunas de Referência

Uma chave composta é uma chave que é composta por mais de uma coluna. Os Modelos de Dados não podem utilizar chaves compostas: uma tabela tem de ter sempre exatamente uma coluna que identifique exclusivamente cada linha na tabela. Se importar tabelas que tenham uma relação existente com base numa chave composta, o Assistente de Importação de Tabelas no Power Pivot irá ignorar essa relação porque não pode ser criada no modelo.

Para criar uma relação entre duas tabelas que tenham várias colunas que definam as chaves primária e externa, combine primeiro os valores para criar uma única coluna de chave antes de criar a relação. Pode fazê-lo antes de importar os dados ou ao criar uma coluna calculada no Modelo de Dados com o suplemento Power Pivot.

Relações Muitos-para-Muitos

Um Modelo de Dados não pode ter relações muitos-para-muitos. Não é possível adicionar simplesmente tabelas de junção no modelo. No entanto, pode utilizar funções do DAX para modelar relações muitos-para-muitos.

Associações Automáticas e Ciclos

As associações automáticas não são permitidas num Modelo de Dados. Uma associação automática é uma relação recursiva entre uma tabela e ela própria. As associações automáticas são frequentemente utilizadas para definir hierarquias principal-subordinado. Por exemplo, pode associar uma tabela Empregados a ela própria para produzir uma hierarquia que mostra a cadeia de gestão de uma empresa.

O Excel não permite a criação de ciclos entre relações num livro. Por outras palavras, o conjunto de relações seguinte é proibido.

Tabela 1, coluna a   a   Tabela 2, coluna f

Tabela 2, coluna f   a   Tabela 3, coluna n

Tabela 3, coluna n   a   Tabela 1, coluna a

Se tentar criar uma relação que resulte na criação de um ciclo, é gerado um erro.

Uma das vantagens da importação de dados com o suplemento Power Pivot é que o Power Pivot pode, por vezes, detetar relações e criar novas relações no Modelo de Dados que cria no Excel.

Quando importa várias tabelas, o Power Pivot deteta automaticamente quaisquer relações que existam entre as tabelas. Quando cria uma Tabela Dinâmica, o Power Pivot analisa os dados existentes nas tabelas. Ele deteta relações possíveis que possam não ter sido definidas e sugere colunas adequadas para incluir nessas relações.

O algoritmo de deteção utiliza dados estatísticos sobre os valores e os metadados das colunas para efetuar inferências sobre a probabilidade das relações.

  • Os tipos de dados existentes em todas as colunas relacionadas devem ser compatíveis. Na deteção automática, são suportados os tipos de dados de número inteiro e os tipos de dados de texto. Para mais informações sobre tipos de dados, consulte Tipos de dados suportados em Modelos de Dados.

  • Para que a relação seja detetada com êxito, o número de chaves exclusivas na coluna de pesquisa tem de ser maior que os valores na tabela no lado de muitos. Por outras palavras, a coluna chave no lado de muitos da relação não pode conter quaisquer valores que não estejam na coluna chave da tabela de pesquisa. Por exemplo, suponha que tem uma tabela que lista produtos com os seus IDs (a tabela de pesquisa) e uma tabela de vendas para cada produto (o lado de muitos da relação). Se os registos de vendas contiverem o ID de um produto que não tenha um ID correspondente na tabela Produtos, a relação não pode ser criada automaticamente, mas poderá conseguir criá-la manualmente. Para que o Excel detete a relação, tem de atualizar primeiro a tabela de referência Produto com os IDs dos produtos em falta.

  • Certifique-se de que o nome da coluna de chave no lado muitos é semelhante ao nome da coluna de chave na tabela de referência. Os nomes não têm de ser exatamente os mesmos. Por exemplo, numa definição empresarial, muitas vezes tem variações nos nomes das colunas que contêm essencialmente os mesmos dados: ID do Emp, EmployeeID, ID do Funcionário, EMP_ID, etc. O algoritmo deteta nomes semelhantes e atribui uma maior probabilidade às colunas que têm nomes semelhantes ou exatamente correspondentes. Por conseguinte, para aumentar a probabilidade de criar uma relação, pode tentar mudar o nome das colunas nos dados que importar para algo semelhante às colunas nas tabelas existentes. Se o Excel encontrar várias relações possíveis, não criará uma relação.

Estas informações poderão ajudar a compreender o motivo pelo qual não são detetadas todas as relações ou de que modo as alterações nos metadados (por exemplo, nome do campo e tipos de dados) poderiam melhorar os resultados da deteção automática de relações. Para obter mais informações, consulte Resolução de Problemas de Relações.

Deteção Automática para Conjuntos com Nomes

As relações são criadas automaticamente sempre que adiciona campos novos a uma Tabela Dinâmica ou Gráfico Dinâmico. Também pode configurar relações manualmente. Se pretender utilizar a deteção automática de relações, remova cada Conjunto com Nome e adicione os campos individuais do Conjunto com Nome diretamente à Tabela Dinâmica.

Inferência de Relações

Em alguns casos, as relações entre tabelas são automaticamente encadeadas. Por exemplo, se criar uma relação entre os dois primeiros conjuntos de tabelas abaixo, é inferida a existência de uma relação entre as outras duas tabelas e é automaticamente estabelecida uma relação.

Produtos e Categoria -- criada manualmente

Categoria e Subcategoria -- criada manualmente

Produtos e Subcategoria -- a relação é inferida

Para que as relações sejam encadeadas automaticamente, as relações têm de ser um sentido, conforme mostrado acima. Por exemplo, se as relações iniciais fossem entre Vendas e Produtos e Vendas e Clientes, não seria inferida nenhuma relação. Isto acontece porque a relação entre Produtos e Clientes é uma relação de muitos-para-muitos.

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.