ฟังก์ชัน FILTERXML

นำไปใช้กับ
Excel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

ฟังก์ชัน FILTERXML จะส่งกลับข้อมูลเฉพาะจากเนื้อหา XML โดยใช้ xpath ที่ระบุ

หมายเหตุ

  • ฟังก์ชัน FILTERXML ไม่พร้อมใช้งานใน Excel สำหรับเว็บและ Excel for Mac
  • ฟังก์ชันนี้อาจปรากฏในแกลเลอรีฟังก์ชันใน Excel for Mac แต่ขึ้นอยู่กับฟีเจอร์ของระบบปฏิบัติการ Windows ดังนั้นจะไม่ส่งกลับผลลัพธ์บน Mac

ไวยากรณ์

FILTERXML(xml, xpath)

ไวยากรณ์ของฟังก์ชัน FILTERXML มีอาร์กิวเมนต์ดังต่อไปนี้

อาร์กิวเมนต์ คำอธิบาย
Xml
จำเป็น
สตริงในรูปแบบ XML ที่ถูกต้อง
Xpath
จำเป็น
สตริงในรูปแบบ XPath มาตรฐาน

หมายเหตุ

  • ถ้า xml ไม่ถูกต้อง FILTERXML จะส่งกลับ # VALUE! เป็นค่าความผิดพลาด
  • ถ้า XML มี Namespace กับคำนำหน้าที่ไม่ถูกต้อง FILTERXML จะส่งกลับ #VALUE! เป็นค่าความผิดพลาด

ตัวอย่าง

  1. ตัวอย่างนี้ใช้ฟังก์ชัน FILTERXML กับข้อมูล XML ที่ส่งกลับในเซลล์ B2 ซึ่งมาจากผลลัพธ์ของฟังก์ชัน WEBSERVICE บนคิวรีเว็บในเซลล์ B1
    ตัวอย่างฟังก์ชัน FILTERXML
    ข้อมูลจาก FILTERXML จะถูกส่งกลับในเซลล์ B3:B5 และ C3:C5 และแสดงผลลัพธ์คิวรีที่อัปเดตล่าสุดสามรายการบน Wikipedia และเวลาที่อัปเดต (ตาม UTC "เวลามาตรฐานสากล")
    เซลล์ B3:B5 มีสูตร =FILTERXML(B3,"//rc/@title")
    เซลล์ C3:C5 มีสูตร =FILTERXML(B3,"//rc/@timestamp")

    หมายเหตุ

    ถ้าคุณมี Microsoft 365 เวอร์ชันปัจจุบัน คุณสามารถใส่สูตรในเซลล์ด้านบนซ้ายของช่วงผลลัพธ์ แล้วกด ENTER เพื่อยืนยันสูตรเป็นสูตรอาร์เรย์แบบไดนามิก มิฉะนั้น ต้องใส่สูตรเป็นสูตรอาร์เรย์ดั้งเดิม โดยเลือกช่วงผลลัพธ์ก่อน ใส่สูตรในเซลล์ด้านซ้ายบนของช่วงผลลัพธ์ แล้วกด CTRL+SHIFT+ENTER เพื่อยืนยัน Excel จะแทรกวงเล็บปีกกาที่จุดเริ่มต้นและจุดสิ้นสุดของสูตรให้คุณ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับสูตรอาร์เรย์ ให้ดูที่ คำแนะนำและตัวอย่างของสูตรอาร์เรย์

  2. คุณยังสามารถใช้ FILTERXML ร่วมกับฟังก์ชัน ENCODEURL และ WEBSERVICE ได้ ตัวอย่างเช่น คุณสามารถใช้บริการ api markitondemand.com เพื่อส่งกลับข้อมูลเกี่ยวกับหุ้นของบริษัท:
    =WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2))
    ที่คุณมีเครื่องพิมพ์ราคาหุ้นในเซลล์ C2
    จากนั้นคุณสามารถใช้ฟังก์ชัน FILTERXML เพื่อแยกข้อมูลเฉพาะเกี่ยวกับหุ้นนั้นได้ ตัวอย่างเช่น หากต้องการรับราคาสุดท้ายของเครื่องพิมพ์ราคาหุ้นในเซลล์ C2 คุณสามารถใช้:
    =FILTERXML(WEBSERVICE("http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol="&ENCODEURL(C2)),"//QuoteApiModel/Data/LastPrice")

ต้องการความช่วยเหลือเพิ่มเติมไหม

คุณสามารถสอบถามผู้เชี่ยวชาญใน ชุมชนด้านเทคนิคของ Excel หรือรับการสนับสนุนใน ชุมชนได้เสมอ