Atualizações do Power Query a partir do SharePoint/OneDrive/Teams podem falhar com “DataFormat.Error — malformed web response”. Veja como identificar a causa, corrigir rapidamente limpando permissões globais e prevenir o retorno do erro.
Visão geral do problema
Ao atualizar várias consultas do Power Query com origem no Microsoft 365 (SharePoint, OneDrive ou Teams), todas falham com a mesma mensagem, apesar de o mesmo ficheiro/consulta atualizar normalmente noutro computador. O erro típico é:
[DataFormat.Error] We received a malformed web response … .xlsx
O facto de a atualização funcionar numa máquina diferente aponta para um problema local (credenciais, cache, sessão ou rede) e não para defeito no ficheiro, na consulta ou na origem.
Diagnóstico rápido
- A falha ocorre em várias consultas com fontes M365 (SharePoint/OneDrive/Teams).
- Outros utilizadores conseguem atualizar o mesmo ficheiro/consulta.
- O erro aparece logo no início do refresh ou após um redirecionamento.
- A abertura da mesma URL no navegador mostra uma página de início de sessão ou aviso da organização.
Causa mais comum
Tokens de autenticação expirados ou corrompidos, credenciais inconsistentes (por exemplo, conta pessoal vs. organizacional) e caches de sessão inválidos fazem com que, ao invés de devolver o ficheiro binário esperado (como um .xlsx
), o servidor retorne HTML de login/erro. O Power Query tenta interpretar esse HTML como um ficheiro e conclui que recebeu uma “resposta web malformada”.
Solução confirmada
A correção mais eficaz e segura é limpar as Permissões globais do Power Query e autenticar-se novamente com a conta organizacional correta (M365). Após revalidar as credenciais, as atualizações voltam a funcionar.
Passo a passo no Excel (Power Query)
- No Excel, aceda a Dados → Obter Dados → Configurações/Definições da Fonte de Dados.
- Abra o separador Permissões globais.
- Selecione as entradas relacionadas ao Microsoft 365 (por exemplo,
https://tenant.sharepoint.com
, OneDrive, Teams) e clique em Limpar/Remover permissões. - Feche a janela. Na próxima atualização, autentique-se novamente com a conta organizacional.
Passo a passo no Power BI Desktop
- No Power BI Desktop, vá a Ficheiro/Arquivo → Opções e definições → Configurações da fonte de dados.
- Selecione Permissões globais.
- Limpe as permissões para
sharepoint.com
, OneDrive e endpoints relacionados. - Reabra o relatório ou atualize e inicie sessão novamente com a sua conta M365.
Por que isso funciona
Quando o Power Query usa conectores web e de SharePoint, espera receber binários (ficheiros, listas, conteúdos JSON/CSV). Se o token estiver inválido, o serviço devolve uma página HTML de login/erro. O motor de dados do Power Query verifica o tipo de conteúdo e, ao ver HTML onde deveria haver um .xlsx
, acusa DataFormat.Error com a indicação de resposta “malformada”. Ao limpar permissões e reautenticar, novos tokens são emitidos e o conteúdo correto volta a ser recebido.
Checklist de diagnóstico detalhado
Sintoma | Provável causa | Ação corretiva |
---|---|---|
Erro “malformed web response” logo no início | Token expirado ou credenciais inconsistentes | Limpe permissões globais e reautentique com conta M365 |
Funciona noutro PC/usuário | Problema local (cache, sessão, proxy/VPN) | Limpe cache do Power Query, verifique rede/VPN, credenciais do Windows |
Navegador mostra página de login ao abrir a URL | Autenticação requerida/SSO interrompido | Inicie sessão no navegador com a mesma conta da consulta |
Ficheiro/ligação em site SharePoint moderno | Uso do conector “Web” com URL de partilha | Prefira conector SharePoint (Folder/List) e relative path |
Falhas intermitentes em redes corporativas | Proxy SSL/TLS, inspeção ou VPN instável | Teste noutra rede, ajuste proxy/VPN, adicione exclusões |
Boas práticas de conexão
Escolher o conector adequado reduz muito a probabilidade de falhas de autenticação:
Cenário | Conector recomendado | Observações |
---|---|---|
Ler um ficheiro Excel armazenado no SharePoint/OneDrive | SharePoint Folder + filtro pelo caminho do ficheiro | Evite “Web” com URL direta de partilha; use Site URL no formato https://<tenant>.sharepoint.com/sites/<site> |
Ler uma lista do SharePoint Online | SharePoint Online List | Autenticação integrada ao M365; suporta listas modernas |
Ler conteúdo estático via HTTP | Web (Web.Contents ) | Defina cabeçalhos e RelativePath quando aplicável; atenção a redirecionamentos |
Partilha de ficheiro em equipa do Microsoft Teams | SharePoint Folder | As bibliotecas do Teams são bibliotecas do SharePoint por trás |
Como limpar cache e credenciais
No Excel (Windows/macOS)
- Em Dados → Obter Dados → Opções de Consulta, encontre a secção Cache.
- Clique em Limpar cache e confirme. Feche e reabra o Excel.
- Volte a Configurações/Definições da Fonte de Dados → Permissões globais e remova entradas para
sharepoint.com
, OneDrive e Teams.
No Windows Credential Manager (opcional)
- Abra o Gestor de Credenciais (Painel de Controlo → Contas de Utilizador → Gestor de Credenciais).
- Em Credenciais do Windows, localize Credenciais Genéricas antigas relacionadas a SharePoint, Office ou MicrosoftOffice.
- Remova as entradas desatualizadas. Reinicie o Excel e autentique-se de novo.
Dica: se usa vários tenants, garanta que autentica com a conta que tem acesso aos sites e bibliotecas em questão.
Validação da URL no navegador
Uma verificação simples ajuda a confirmar a causa:
- Copie a mesma URL usada pela consulta e cole no navegador.
- Se vir uma página de login, aviso de segurança ou portal da empresa em vez do ficheiro/JSON, a autenticação está a falhar.
- Inicie sessão com a mesma conta que pretende usar no Power Query. Depois volte ao Excel e atualize.
Rede, proxy e VPN
- Teste noutra rede (dados móveis, hotspot) para isolar se o problema é do ambiente corporativo.
- VPN: desligue/religue ou mude de região. Algumas VPNs quebram a negociação com o SharePoint.
- Proxy/inspeção SSL: soluções de inspeção (ex.: man-in-the-middle corporativo) podem alterar cabeçalhos ou bloquear redirecionamentos de login. Peça exceções para domínios do M365 ou use a lista oficial da organização.
- Verifique se certificados raiz corporativos estão instalados corretamente, evitando alertas de segurança invisíveis ao Power Query.
Configuração do Office e estado da sessão
- Mantenha o Office atualizado (canal mensal/semi‑anual conforme política da empresa).
- Em Conta, confirme que está ligado ao Office com a sua conta M365.
- Se alterna entre contas, prefira usar Perfis separados no Edge/Chrome para evitar mistura de cookies/tokens.
Como evitar o retorno do erro
- Prefira conectores nativos do SharePoint/OneDrive/Teams em vez de Web com URL de partilha.
- Se usa
Web.Contents
, utilize o parâmetro RelativePath e Query para reduzir redirecionamentos e padronizar a autenticação. - Evite misturar tipos de credencial (Anónimo, Básica, Conta Organizacional) para o mesmo domínio.
- Quando parametrizar endereços, mantenha o “Test connection” funcional (ou, se necessário, desative o teste apenas para fontes confiáveis e documente).
Exemplo de salvaguarda no M (opcional)
Se precisar de sinais antecipados de que a resposta não é binária, um guard simples no M pode ajudar (para utilizadores avançados):
let
Url = "https://<tenant>.sharepoint.com/sites/<site>/Shared%20Documents/<ficheiro>.xlsx",
Source = Web.Contents(Url),
Meta = Value.Metadata(Source),
Ctype = try Meta[Headers][#"Content-Type"] otherwise null,
IsHtml = try Text.StartsWith(Text.Lower(Ctype), "text/html") otherwise false,
Check = if IsHtml then error "Recebido HTML (login/erro). Verifique credenciais." else Source,
Excel = Excel.Workbook(Check, null, true)
in
Excel
Este padrão não substitui a correção de credenciais, mas ajuda a produzir mensagens mais claras para o utilizador final.
Casos especiais
- Partilhas externas: se a ligação depende de permissões temporárias ou de um convite externo, renove o acesso antes do refresh.
- Multi‑fator (MFA): expirações de sessão exigem novo login. Após limpar permissões, o MFA volta a ser solicitado automaticamente.
- Power BI Service: a atualização no serviço usa credenciais armazenadas no gateway ou nas definições do conjunto de dados. Se o Desktop falha, mas o Service funciona, é mais uma prova de problema local.
Passo a passo resumido
- Limpe Permissões Globais no Excel/Power BI para
sharepoint.com
, OneDrive e Teams. - Reautentique com a sua conta organizacional M365 no primeiro refresh.
- Limpe o cache do Power Query e reinicie o Excel.
- Valide a URL no navegador; confirme que não aparece uma página de login/aviso.
- Verifique rede/proxy/VPN caso o erro persista ou seja intermitente.
- Use o conector adequado (SharePoint Folder/Online List) para maior estabilidade.
- Atualize o Office e confirme sessão ativa em Conta.
FAQ rápida
Esta falha estraga as minhas consultas? Não. As consultas/tabela permanecem válidas; o problema é a sessão/credencial local.
Preciso voltar a construir tudo? Normalmente não. Depois de limpar permissões e autenticar novamente, as atualizações retomam sem alterações no M.
Limpar permissões apaga as fontes? Não. Apenas remove credenciais armazenadas; as fontes continuam listadas.
Uso Mac: os passos são diferentes? As rotas de menu podem variar ligeiramente, mas os conceitos são idênticos: Configurações/Definições da Fonte de Dados → Permissões globais → Limpar.
Conclusão
Quando o Power Query acusa “DataFormat.Error — malformed web response” ao ler ficheiros do SharePoint/OneDrive/Teams, a causa mais provável é um problema local de autenticação/cache. Limpar as permissões globais e iniciar sessão novamente resolve na maioria dos casos. Para evitar recorrência, prefira conectores nativos do SharePoint, mantenha o Office atualizado e garanta consistência entre a conta do Office e as credenciais usadas nas fontes. Em resumo: o problema não estava nas consultas, mas nas credenciais/cache locais — e a limpeza seguida de reautenticação devolve a normalidade ao refresh.
Guia rápido de ações
Ação | Objetivo | Quando usar |
---|---|---|
Limpar Permissões Globais | Remover tokens/credenciais inválidos | Erro “malformed web response”, mudança de conta, troca de senha |
Limpar Cache do Power Query | Descartar conteúdos e metadados obsoletos | Falhas intermitentes ou após mudar ambiente |
Validar URL no navegador | Confirmar se há redirecionamento para login/aviso | Suspeita de problema de autenticação |
Verificar Rede/Proxy/VPN | Eliminar interferências na autenticação | Diferenças entre redes, timeouts, bloqueios |
Usar conector SharePoint apropriado | Estabilidade e SSO integrado | Quando a origem está no Microsoft 365 |
Resumo final: limpar as permissões globais do Power Query e autenticar-se novamente na(s) fonte(s) de dados do Microsoft 365 resolve o erro “malformed web response” na grande maioria dos cenários. Se voltar a ocorrer, siga as dicas complementares: limpe o cache, revise rede/VPN, atualize o Office e confirme que está a usar o conector mais adequado.