A função FILTERXML retorna dados específicos do conteúdo XML usando o xpath especificado.
Observação
- A função FILTERXML não está disponível no Excel para a Web e no Excel para Mac.
- Esta função pode aparecer na galeria de funções no Excel para Mac, mas depende de recursos do sistema operacional Windows, portanto, não retornará resultados no Mac.
Sintaxe
FILTROXML(xml, xpath)
A sintaxe da função FILTROXML tem os seguintes argumentos.
| Argumento | Descrição |
|---|---|
|
XML Obrigatório |
Uma cadeia de caracteres em formato XML válido |
|
XPath Obrigatório |
Uma cadeia de caracteres no formato XPath padrão |
Observação
- Se xml não for válido, FILTERXML retornará o #VALUE! valor de erro.
- Se xml contiver um namespace com um prefixo inválido, FILTERXML retornará o #VALUE! valor de erro.
Exemplos
Este exemplo usa a função FILTROXML nos dados XML retornados na célula B2, que são fornecidos pelos resultados da função WEBSERVICE na consulta à Web na célula B1.
Os dados de FILTERXML são retornados nas células B3:B5 e C3:C5 e mostram os três resultados de consulta atualizados mais recentemente na Wikipédia e a hora de suas atualizações (em UTC, "Tempo Universal Coordenado").
As células B3:B5 contêm a fórmula =FILTROXML(B3;"//rc/@title").
As células C3:C5 contêm a fórmula =FILTROXML(B3;"//rc/@timestamp").Observação
Se você tiver uma versão atual do Microsoft 365, basta inserir a fórmula na célula superior esquerda do intervalo de saída e pressionar ENTER para confirmar a fórmula como uma fórmula de matriz dinâmica. Caso contrário, a fórmula deve ser inserida como uma fórmula de matriz herdada, selecionando primeiro o intervalo de saída, inserindo a fórmula na célula superior esquerda do intervalo de saída e pressionando CTRL+SHIFT+ENTER para confirmar. O Excel insere colchetes no início e no final da fórmula para você. Para obter mais informações sobre fórmulas de matriz, confira Diretrizes e exemplos de fórmulas de matriz.
Você também pode usar FILTERXML em conjunto com as funções ENCODEURL e WEBSERVICE . Por exemplo, você pode usar o serviço de API do markitondemand.com para retornar informações sobre uma ação de empresa:
=WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2))
Onde você tem um ticker de ações na célula C2.
Em seguida, você pode usar a função FILTERXML para extrair dados específicos sobre esse estoque. Por exemplo, para obter o Último Preço do ticker da ação na célula C2, você pode usar:
=FILTERXML(WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2)),"//QuoteApiModel/Data/LastPrice")
Precisa de mais ajuda?
Você sempre pode consultar um especialista na Excel Tech Community ou obter suporte nas Comunidades.