Excel 365 ยิง Request API ได้ .. เหยยย บ้าน่าแอด จริงหรอ 555+
จริงงงงง เดี๋ยวแอดทำให้ดู เรียกใช้ฟังก์ชันเดียวเสร็จเลย ทำไม Google Sheets ไม่มีแบบนี้บ้าง 🤣
บทความนี้แอดมาแชร์วิธีใช้ Gemini CLI สร้างโปรแกรม API ง่ายๆรันบนคอมพิวเตอร์ส่วนตัว แล้วใช้ Excel ยิง GET Request เพื่อขอข้อมูลจาก API เส้นนี้ ลุยคร้าบ
What is API

API ย่อมาจาก Application Programming Interface แปลว่า .. แปลยากมาก 555+
แอดขออธิบายภาษามนุษย์ง่ายๆ API คือหนึ่งในวิธีสื่อสารระหว่างคอมพิวเตอร์สองเครื่อง เช่น คอมพิวเตอร์ของเรากับ Server เพื่อแลกเปลี่ยนข้อมูลกัน
- คอมพิวเตอร์ของเราส่ง
requestไปที่ Server - Server ได้รับคำขอนั้น และส่ง
responseกลับมาที่เรา
อันนี้เป็น Flow การสื่อสารแบบง่ายสุด เรียกว่า request-response cycle
โลกนี้มี Protocols การสื่อสารของคอมพิวเตอร์หลายแบบ ถ้าใครอยากศึกษาต่อ ลองอ่านบทความของ Mozilla ได้เลยนะค้าบ
สำหรับเพื่อนๆที่อยากทำตามบทความนี้ ต้องติดตั้ง Node + Gemini CLI และใช้ Excel 365 เหมือนแอดนะคร้าบ เราใช้สองฟังก์ชัน Webservice + Filterxml
Create Simple API

ขั้นตอนแรก เปิด Gemini CLI พิมพ์ prompt ตามนี้ ใช้ภาษา JavaScript สร้าง API endpoint รันอยู่บนพอร์ต 8000 ในคอมพิวเตอร์ของเรา i.e. localhost
JavaScriptคือภาษายอดนิยมสำหรับใช้ทำงานเว็บและเซอร์เวอร์ต่างๆEndpointภาษามนุษย์คือ URL หรือ path ที่ API ใช้รับส่งข้อมูลPort 8000คือประตูในคอมพิวเตอร์เราที่เปิดไว้ใช้งาน API เส้นนี้
คำศัพท์พื้นฐานเหล่านี้สำคัญมาก เวลาเราเขียน prompt เพื่อสร้าง working software
Hi gemini, create a local server using vanilla JS and http.
This is a simple server, with GET request for CRM customer database.
Add 10 example customers, use XML as our database.
I want to test this demo local server using port 8000.
กระพริบตาสองทีเสร็จ ง่ายจนงง Gemini เขียนโค้ดเร็วเหลือเชื่อ หลังจากแฮงมาหลายสัปดาห์ แง๊ 555+ เราจะได้ API endpoint กลับมา หน้าตาประมาณนี้
https://localhost:8000
คำถาม : ทำไมแอดทอยใช้ XML แทน JSON?
XML ย่อมาจาก Extensible Markup Language เป็นภาษา Markup ยอดนิยมอันดับสอง (รองจาก JSON) ที่เราใช้กันในงาน API
คอนเซปต์ของ XML คือการใช้ <tag> เพื่อ Markup ข้อมูล เช่น ลูกค้าหนึ่งคนในระบบ CRM มีข้อมูล 4 fields คือ id, name, email และ company
<customer>
<id>1</id>
<name>Bob Smith</name>
<email>bob@example.com</email>
<company>DataSystems</company>
</customer>
Excel 365 มีฟังก์ชัน =FILTERXML() สำหรับฟิลเตอร์ข้อมูล XML แบบง่ายจนงง ส่วน JSON ยังไม่มี native function อาจจะต้องรอ Excel อัปเดตเวอร์ชันหน้าๆ
ตัวอย่างวันนี้ แอดขอใช้ database หลังบ้านเป็น .xml เพื่อความง่าย แฮร่ๆ

ขั้นตอนถัดไป มาลองเทส API เส้นนี้ใน Excel ด้วยกันคร้าบ 🤓
Let's Call Our API

เปิดโปรแกรม Excel พิมพ์ฟังก์ชัน =WEBSERVICE() ใส่ API endpoint เป็น input ต้องเขียนไว้ใน double quote แบบนี้
=WEBSERVICE("http://localhost:8000")
กด enter เพื่อส่ง request ไปที่ server เสร็จแล้ว เหยยยแอด ทำไมมันง่ายแบบนี้ 🤣

API จะส่ง response กลับมาเป็นไฟล์ XML
ถ้าทุกคนลองกดดูที่ output จะเห็นว่ามันส่งกลับมาทั้ง database เลย .. ถ้าเรามีลูกค้า 100 คน มันจะส่งกลับมา 100 คน ถ้ามีลูกค้าล้านคน มันก็ส่งกลับมาล้านคน ..
Excel ระเบิดตู๊มเป็นโกโก้ครันช์ เดี๋ยวๆ 555+
ในชีวิตจริงเราสามารถเขียน PATH + Query Parameter เพิ่มเข้าไปที่ URL เพื่อดึงเฉพาะลูกค้าที่เราต้องการ เช่น ลูกค้า id=1 หรือ id=99 เป็นต้น
https://localhost:8000/customers?id=1
อธิบายฉบับรวบรัด คำศัพท์ควรรู้จักเวลาทำงานกับ API
Endpoint: https:// localhost:8000/customers?id=1Path: /customersQuery Parameter: ?id=1 ใช้คอนเซ็ปต์ key=value pair
Add Query Parameter
มาเขียน prompt อัปเดต API เวอร์ชันถัดไปของเรากันคร้าบ บอก Gemini CLI ให้ใส่ query parameter สำหรับฟิลเตอร์ข้อมูลลูกค้าด้วย id ตามนี้
Add query param to filter customer by id
ถ้าอยากได้วิธีการฟิลเตอร์ข้อมูลจาก fields อื่นๆ สามารถบอกมันได้เลยนะครับ เช่น กรองข้อมูลจาก name หรือ company เป็นต้น

ตอนนี้ (ถ้า Gemini เขียนไม่ผิด 555+) เราจะได้ API endpoint เส้นใหม่ คือ
https://localhost:8000/customers?id=1
กลับไปที่ Excel เรียกฟังก์ชัน =WEBSERVICE() อีกรอบ ลองเปลี่ยน id ได้นะครับ
=WEBSERVICE("https://localhost:8000/customers?id=1")
✅ ถ้าใครรันออก เห็นข้อมูลส่งกลับมาใน Excel .. ยินดีกับทุกคนด้วยคร้าบ เราสร้าง API ที่ใช้งานได้จริงแล้ว สวดยอด ทำไมมันง่ายอย่างนี้ ขยี้ตาสามที ยั๊งงง 555+
Filter Data using XPATH
แถมอีกหนึ่งฟังก์ชัน =FILTERXML() เพื่อดึงเฉพาะ field ที่เราต้องการออกมาจาก response ที่ API ส่งกลับมา อันนี้เป็นเทคนิคการเขียน XPATH

Cell A5:A7 แอดเขียน XPATH เพื่อดึงชื่อ อีเมล และบริษัท ให้ดูเป็นตัวอย่าง จริงๆ XPATH เขียนไม่ยากเลย สำหรับพื้นฐานง่ายๆ แค่พิมพ์ //field ได้เลย เย้
พอใช้งาน local server เสร็จแล้ว กลับไปที่ Gemini CLI พิมพ์คำสั่ง kill our local server, thanks Gemini ปิดโปรเจ็คอย่างสมบูรณ์แบบ
สรุปสิ่งที่ทุกคนได้เรียนรู้จาก tutorial วันนี้
- API คือหนึ่งในวิธีการสื่อสารระหว่างคอมพิวเตอร์สองเครื่อง ในบทความนี้คือระหว่าง Excel และ Localhost ที่เราสร้างขึ้นมาชั่วคราว
- เราอยู่ในยุคที่สร้าง Simple API ไว้ใช้งานเองได้แล้ว แอดรัก Gemini CLI พลังแห่งการ Vibe Coding ช่างทรงพลังเหลือเกิน ขนลู๊กกก
- สิ่งสำคัญที่สุดของ API คือข้อมูลที่อยู่หลังบ้าน จะเก็บแบบ JSON, XML หรือ SQL ได้หมดเลย อยู่ที่เราจะสร้าง API เส้นนี้ยังไง ความรู้ Data เน้นๆ 555+
- สองฟังก์ชันที่มีประโยชน์มากใน Excel 365 คือ
WEBSERVICEและFILTERXML
ถ้าใครอยากลอง deploy API ขึ้นบนเว็บ (on cloud) แอดแนะนำ Cloudflare หรือ DigitalOcean นะคร้าบ แอดเคยพูดเรื่องนี้ไปแล้ว และจะพูดอีกเรื่อยๆ
Cloudflare คือสิ่งดีที่สุดที่แอดได้รู้จักในปี 2026 เลย เลิฟฟฟฟ
ปล. สัปดาห์นี้เหมือน Gemini CLI จะกลับมาทำงานได้แบบปกติแล้ว เร็ว แรง ไม่เกรงใจใคร 555+ ใครยังใช้ CLI ไม่เป็น ต้องฝึกแล้วคร้าบ นี่คืออนาคตของการทำงานกับ AI เลย

Comments