FILTERXML¶
종류: MS Excel 호환 함수 · 네이티브 도입: Excel 2013
지정한 XPath로 XML 내용에서 데이터를 반환합니다.
구문¶
=FILTERXML(xml, xpath)
인수¶
| 인수 | 필수 | 설명 |
|---|---|---|
| xml | 필수 | XML 텍스트 |
| xpath | 필수 | XPath 식 |
반환¶
XPath와 일치하는 노드가 1개이면 그 텍스트를 스칼라로, 여러 개이면 N×1 세로 텍스트 배열을 스필로 반환합니다. XML/XPath가 비었거나 XML 파싱·XPath 처리에 실패하면 #VALUE!, 일치하는 노드가 없으면 #N/A를 반환합니다.
예제¶
| 수식 | 결과 | 설명 |
|---|---|---|
=FILTERXML("<r><a>1</a><a>2</a></r>","//a") |
{"1";"2"} | 모든 a 노드 텍스트 |
=FILTERXML(WEBSERVICE("https://example.com/rss.xml"),"//item/title") |
외부 XML에 따라 다름 |
참고¶
- MSXML6로 파싱하며 함수 자체는 네트워크에 접근하지 않습니다 — 원격 XML은 WEBSERVICE와 조합합니다.
- 결과는 노드의 텍스트이며 항상 텍스트 형식으로 반환됩니다.
- COM 사용으로 다중 스레드 재계산에서 제외됩니다(스레드 안전 아님).
- xml·xpath에 배열을 지정하면 지정한 배열과 같은 모양의 배열을 반환하며, 각 원소는 원소별 결과의 첫 값입니다(네이티브와 같은 강등 리프팅).
- 지원: Excel 2010+. 네이티브가 없는 구버전에서는
FILTERXML그대로(드롭인), 네이티브가 있는 최신 Excel에서는EG.FILTERXML으로 등록됩니다.