Ao usar o Copilot no Excel com dados armazenados em tabelas do Modelo de Dados, você pode notar que o Copilot detecta e usa automaticamente relacionamentos entre essas tabelas. Esse comportamento é chamado de inferência de relacionamentos. Ele permite que o Copilot combine dados de várias tabelas sem que você defina manualmente cada relacionamento. No entanto, as regras de inferência têm limitações específicas e podem nem sempre corresponder à sua lógica pretendida. Este artigo explica como o Copilot infere relacionamentos, quais regras segue e como evitar resultados incorretos.
Principais Conclusões: Inferência de Relacionamentos do Copilot no Modelo de Dados do Excel
- Modelo de Dados > Exibição de Diagrama: O Copilot usa relacionamentos existentes definidos no Modelo de Dados e infere novos com base em nomes de colunas e tipos de dados.
- Power Query > Mesclar Consultas: Para controle manual sobre junções de tabelas, use o Power Query para criar relacionamentos explícitos antes de carregar para o Modelo de Dados.
- Painel do Copilot > Fontes de dados: O Copilot infere relacionamentos apenas de tabelas que já fazem parte do Modelo de Dados, não de intervalos de planilhas comuns.
Como o Copilot Infere Relacionamentos no Modelo de Dados do Excel
O Copilot no Excel depende do Modelo de Dados subjacente para entender como as tabelas se conectam. O Modelo de Dados é um banco de dados em memória que armazena estruturas de tabelas, colunas e relacionamentos. Quando você faz uma pergunta ao Copilot que abrange várias tabelas, como “Mostrar total de vendas por região”, o Copilot examina o Modelo de Dados em busca de relacionamentos existentes. Se não houver um relacionamento explícito, o Copilot tenta inferir um com base em nomes de colunas correspondentes e tipos de dados compatíveis. Por exemplo, uma coluna chamada “ClienteID” em uma tabela de Vendas e uma tabela de Clientes acionará uma inferência, mesmo que nenhum relacionamento tenha sido criado manualmente.
Esse processo de inferência não é aleatório. O Copilot segue um conjunto de heurísticas:
- Os nomes das colunas devem ser idênticos ou quase idênticos, ignorando maiúsculas/minúsculas e espaços iniciais/finais.
- Os tipos de dados devem corresponder ou ser implicitamente conversíveis. Por exemplo, uma coluna de texto chamada “PedidoID” e uma coluna numérica chamada “PedidoID” não serão correspondidas.
- Apenas uma coluna por tabela é usada para a inferência. Se várias colunas tiverem o mesmo nome entre as tabelas, o Copilot usa a primeira correspondência encontrada no esquema do Modelo de Dados.
- Os relacionamentos inferidos são sempre um-para-muitos, com a tabela contendo valores únicos no lado “um” e a outra tabela no lado “muitos”.
O Copilot não persiste relacionamentos inferidos no Modelo de Dados. Eles existem apenas durante a sessão de consulta. Isso significa que cada vez que você abre a pasta de trabalho ou atualiza o Modelo de Dados, o Copilot reavalia a inferência. Se seus dados mudarem, o relacionamento inferido pode mudar também.
Etapas para Verificar e Controlar a Inferência de Relacionamentos
Para garantir que o Copilot retorne resultados precisos, você deve verificar quais relacionamentos ele usa e, se necessário, defini-los explicitamente. Siga estas etapas.
- Abra o Modelo de Dados no Power Pivot
Vá para a guia Power Pivot e clique em Gerenciar. Isso abre a janela do Power Pivot onde você pode ver todas as tabelas e relacionamentos no Modelo de Dados. - Alterne para a Exibição de Diagrama
Na janela do Power Pivot, clique em Exibição de Diagrama na guia Início. Isso exibe as tabelas como caixas com colunas e linhas representando relacionamentos. Relacionamentos explícitos aparecem como linhas sólidas. Relacionamentos inferidos não são mostrados como linhas. - Verifique se há Relacionamentos Ausentes
Procure por tabelas que não estão conectadas por uma linha. Se duas tabelas que deveriam estar relacionadas estiverem desconectadas, o Copilot tentará inferir, mas pode escolher as colunas erradas. Para evitar isso, crie um relacionamento explícito. - Crie um Relacionamento Explícito
Na Exibição de Diagrama, arraste uma coluna de uma tabela para a coluna correspondente em outra tabela. Uma caixa de diálogo aparece. Confirme a direção do relacionamento e a cardinalidade. Clique em OK. A linha agora aparece sólida, e o Copilot usará este relacionamento explícito em vez de inferir um. - Teste o Copilot com uma Consulta de Várias Tabelas
Volte ao Excel e digite uma pergunta no painel do Copilot que exija dados de ambas as tabelas, como “Listar produtos com quantidade total vendida”. Verifique se a saída corresponde à sua lógica de junção esperada.
Problemas Comuns de Inferência e Como Evitá-los
O Copilot Corresponde às Colunas Erradas
Se duas tabelas tiverem várias colunas com o mesmo nome, o Copilot pode escolher a errada. Por exemplo, uma tabela de Vendas pode ter uma coluna “Data” para data do pedido e uma tabela de Produtos pode ter uma coluna “Data” para data de lançamento do produto. O Copilot pode inferir um relacionamento em “Data” mesmo que a junção pretendida seja em “ProdutoID”. Para corrigir isso, renomeie uma das colunas duplicadas antes de adicionar a tabela ao Modelo de Dados, ou crie um relacionamento explícito nas colunas corretas.
Relacionamento Inferido Causa Linhas Duplicadas
Como o Copilot sempre infere relacionamentos um-para-muitos, ele pode assumir uma coluna única no lado “um” que na verdade contém duplicatas. Isso pode causar multiplicação de linhas nos resultados da consulta. Por exemplo, se ambas as tabelas têm uma coluna “ClienteID”, mas a tabela de Clientes tem entradas duplicadas para o mesmo ID, o Copilot produzirá contagens infladas. Para evitar isso, certifique-se de que a tabela de consulta tenha valores únicos na coluna usada para o relacionamento.
O Copilot Não Consegue Inferir Relacionamentos em Novas Planilhas
Se você adicionar uma nova tabela à pasta de trabalho copiando dados para uma planilha, o Copilot não a adiciona automaticamente ao Modelo de Dados. A inferência de relacionamentos se aplica apenas a tabelas adicionadas explicitamente ao Modelo de Dados via Power Query ou Power Pivot. Para incluir uma nova tabela, vá para a guia Power Pivot e clique em Adicionar ao Modelo de Dados antes de fazer perguntas ao Copilot que envolvam essa tabela.
Relacionamento Explícito vs Relacionamento Inferido: Principais Diferenças
| Item | Relacionamento Explícito | Relacionamento Inferido |
|---|---|---|
| Método de criação | Definido manualmente na Exibição de Diagrama do Power Pivot ou no Power Query | Adivinhado automaticamente pelo Copilot com base em nomes de colunas e tipos de dados |
| Persistência | Salvo no Modelo de Dados e persiste entre sessões | Existe apenas durante a sessão de consulta atual do Copilot |
| Controle de cardinalidade | O usuário pode definir um-para-um, um-para-muitos ou muitos-para-muitos | Sempre um-para-muitos, com o Copilot decidindo a direção |
| Visibilidade | Visível como linhas sólidas na Exibição de Diagrama do Power Pivot | Não visível em nenhuma interface do Excel |
| Confiabilidade | Alta, porque o usuário define explicitamente as colunas de junção | Moderada, depende das convenções de nomenclatura de colunas e da exclusividade dos dados |
Use relacionamentos explícitos quando precisar de resultados consistentes e previsíveis. Use relacionamentos inferidos como um ponto de partida rápido, mas sempre verifique a saída para precisão.
Agora você pode gerenciar a inferência de relacionamentos do Copilot no Excel verificando as conexões existentes do Modelo de Dados e criando relacionamentos explícitos quando necessário. Da próxima vez que criar um relatório com várias tabelas, abra primeiro a Exibição de Diagrama do Power Pivot para confirmar se todas as junções estão corretas. Para cenários avançados, considere usar o Power Query para mesclar tabelas antes de carregá-las no Modelo de Dados, dando a você controle total sobre os tipos de junção e seleção de colunas.