Power Automate Data Interactions – การบันทึกอีเมลลง Excel, การใช้ SharePoint List และ Forms | Power Automate

เลิกเสียเวลาสลับหน้าจอเพื่อ Copy-Paste ข้อมูลอีเมลหรือฟอร์มลงตารางงานด้วยตัวเองได้แล้วค่ะ! ในบทความ EP.5 นี้ เราจะก้าวเข้าสู่ระดับ Intermediate ด้วยการพาไปเจาะลึกเทคนิคการจัดการและเชื่อมโยงคลังข้อมูลในองค์กรแบบไร้รอยต่อ เปลี่ยนงานบันทึกเอกสารอันน่าเบื่อให้กลายเป็นระบบอัตโนมัติที่แม่นยำและรวดเร็ว พร้อมแล้วมาเริ่มวางรากฐานการจัดการข้อมูลอย่างมืออาชีพกันได้เลยค่ะ!
Power Automate Data Interactions
Power Automate EP.5 | บันทึกอีเมลลง Excel, เชื่อม Google Sheets & Forms เข้า SharePoint List

หัวใจสำคัญสูงสุดของการพัฒนากระบวนการทำงานอัตโนมัติในระดับองค์กร ไม่ได้หยุดอยู่แค่การส่งข้อความแจ้งเตือนหรือการเช็กเงื่อนไขพื้นฐานเท่านั้น แต่สิ่งสำคัญที่สุดคือ “การจัดการและจัดเก็บข้อมูลอย่างเป็นระบบ” หลายองค์กรต้องสูญเสียเวลาและทรัพยากรบุคคลไปกับการนั่ง Copy ข้อความจากอีเมลมาวางลงในตารางสเปรดชีต หรือการนำผลสำรวจแบบฟอร์มมานั่งคีย์ข้อมูลลงฐานข้อมูลทีละรายการ ซึ่งนอกจากจะล่าช้าแล้ว ยังเสี่ยงต่อความผิดพลาดของข้อมูล (Human Error) อีกด้วย

ใน EP.4 ที่ผ่านมา เราได้เรียนรู้การใช้ตรรกะเงื่อนไข (Conditions) กันไปแล้ว แต่ในบทความนี้ เราจะขยับความเชี่ยวชาญขึ้นไปอีกขั้น โดยเน้นไปที่เทคนิค Power Automate Data Interactions ซึ่งเป็นกลไกการรับ-ส่ง บันทึก และดึงข้อมูลข้ามแพลตฟอร์มอย่างเต็มรูปแบบ โดยเราจะได้เรียนรู้วิธีจัดการชุดข้อมูลร่วมกับแอปพลิเคชันยอดฮิตอย่าง Excel, Microsoft Forms และ SharePoint List เพื่อให้ระบบทำงานแทนคุณโดยสมบูรณ์ค่ะ

3 เครื่องมือจัดการข้อมูลหลัก

ก่อนลงมือสร้างเวิร์กโฟลว์ เรามาทำความเข้าใจบทบาทของแต่ละส่วนในระบบ Power Automate Data Interactions กันก่อนค่ะ:

  • Excel Online (Business): ตารางสเปรดชีตยอดนิยม เหมาะสำหรับงานบันทึก Log รายการสั้นๆ หรือการประมวลผลข้อมูลที่ต้องการความยืดหยุ่นสูง (ข้อสำคัญ: ตารางในไฟล์ต้องถูกแปลงให้เป็น Excel Table เสียก่อน เครื่องมือถึงจะมองเห็นและเขียนข้อมูลลงไปได้)
  • Microsoft Forms: เครื่องมือสร้างแบบฟอร์มสำรวจและแบบสอบถามออนไลน์ ทำหน้าที่เป็นช่องทางรับ Input ข้อมูลจากผู้ใช้งานภายนอกหรือพนักงานในองค์กรแบบเรียลไทม์
  • SharePoint List: ฐานข้อมูลระดับองค์กร (Enterprise Database) ที่มีความเสถียร ปลอดภัย รองรับการกำหนดประเภทคอลัมน์ (Data Types) ที่ชัดเจน เหมาะสำหรับเป็นคลังข้อมูลหลักสำหรับงานที่ต้องการความแม่นยำสูง

ขั้นตอนการสร้างระบบรับแจ้งซ่อม Microsoft Forms บันทึกเข้า Excel Online

Step 1: สร้างแบบฟอร์มแจ้งซ่อม (Microsoft Forms)

  • เข้าสู่ระบบ Microsoft 365 แล้วเปิดแอปพลิเคชัน Microsoft Forms
หน้าแดชบอร์ดแอปพลิเคชัน Microsoft 365 และการเลือกใช้งาน Microsoft Forms
  • คลิกปุ่ม + New Form แล้วตั้งชื่อฟอร์มว่า “ระบบแจ้งซ่อมอุปกรณ์ (Maintenance Request)”
หน้าหลักของ Microsoft Forms สำหรับกดสร้างฟอร์มใหม่โดยเลือก New Form
  • สร้างคำถามสำหรับรับข้อมูลการแจ้งซ่อม เช่น:
    • ชื่อผู้แจ้ง (Text)
    • ประเภทอุปกรณ์ที่เสีย (Choice: เช่น คอมพิวเตอร์, เครื่องพิมพ์, แอร์)
    • ระดับความเร่งด่วน (Choice)
    • รายละเอียดปัญหา (Text)
    • รูปถ่ายอาการเสีย (File upload)
การออกแบบฟอร์มระบบแจ้งซ่อมอุปกรณ์ Maintenance Request พร้อมใส่หัวข้อคำถามต่างๆ
หน้าต่างการตั้งค่าการแชร์ฟอร์มเพื่อเก็บข้อมูลคำตอบ Collect responses

Step 2: เตรียมไฟล์ Excel Online สำหรับเก็บข้อมูล

  • สร้างไฟล์ Excel บน SharePoint หรือ OneDrive (เช่น ในโฟลเดอร์ learningPowerApps) และตั้งชื่อว่า ระบบแจ้งซ่อมอุปกรณ์
  • จัดเตรียมหัวคอลัมน์ให้ตรงกับคำถามในฟอร์ม (เช่น ชื่อผู้แจ้ง, ประเภทอุปกรณ์ที่เสีย, ระดับความเร่งด่วน, รายละเอียดปัญหา, รูปถ่ายอาการเสีย)
  • ทำการคลุมข้อมูลทั้งหมดแล้วแปลงเป็น Excel Table (โดยไปที่แท็บ Insert เลือก Table และตั้งชื่อ Table เช่น T_MaintenanceRequest)
โครงสร้างตารางข้อมูลใน Excel Online ที่เตรียมไว้สำหรับรับข้อมูลแจ้งซ่อม

Step 3: สร้าง Flow เชื่อมต่อ Forms ไปยัง Excel ใน Power Automate

  • เปิด Power Automate แล้วคลิก + New flow เลือก Automated cloud flow
หน้าสร้าง Automated cloud flow ใน Power Automate โดยเลือก Trigger Forms
  • ตั้งชื่อ Flow เช่น MaintenanceRequest และเลือก Trigger เป็น When a new response is submitted (Microsoft Forms) แล้วคลิก Create
  • ในช่อง Form ID: เลือกแบบฟอร์ม ระบบแจ้งซ่อมอุปกรณ์ ที่สร้างไว้
ตั้งค่า Trigger เมื่อมีการส่งคำตอบใหม่เข้ามาในฟอร์มแจ้งซ่อมอุปกรณ์

Step 4: ดึงข้อมูลรายละเอียดคำตอบ (Get Response Details)

  • คลิก + New step ค้นหาและเลือก Action ของ Microsoft Forms คือ Get response details
  • ในช่อง Form ID: เลือกฟอร์มเดิม
  • ในช่อง Response ID: ให้เลือกดึงค่า Dynamic Content ชื่อ Response id จากขั้นตอน Trigger ก่อนหน้ามาใส่
การเพิ่ม Action แบบ Get response details เพื่อดึงรายละเอียดคำตอบทั้งหมดจากฟอร์ม

Step 5: บันทึกข้อมูลลง Excel Online (Add a row into a table)

  • คลิก + New step ค้นหาและเลือก Action ของ Excel Online (Business) คือ Add a row into a table
  • กำหนดค่าตำแหน่งไฟล์ Excel:
    • Location: เลือก SharePoint Site หรือ OneDrive ที่เก็บไฟล์
    • Document Library: เลือก Documents
    • File: เลือกไฟล์ Excel ระบบแจ้งซ่อมอุปกรณ์.xlsx
    • Table: เลือกชื่อ Table ที่ตั้งไว้ (เช่น T_MaintenanceRequest)
  • เมื่อเลือก Table ระบบจะแสดงฟิลด์คอลัมน์ทั้งหมดขึ้นมา ให้คลิกเลือกจับคู่ Dynamic Content จากฟอร์มให้ตรงกับแต่ละคอลัมน์ (เช่น ชื่อผู้แจ้งใส่ช่อง ชื่อผู้แจ้ง, รายละเอียดปัญหาใส่ช่อง รายละเอียดปัญหา)
  • คลิกปุ่ม Save เพื่อบันทึก Flow
การเพิ่ม Action บันทึกข้อมูลลงตาราง Excel Online และการผูก Dynamic Content

Step 6: ทดสอบส่งฟอร์มและตรวจสอบการรัน Flow (Run History)

  • ไปที่แบบฟอร์ม ระบบแจ้งซ่อมอุปกรณ์ แล้วทดลองกรอกข้อมูลจำลอง พร้อมแนบรูปถ่ายแล้วกด Submit จะพบหน้าจอแสดงข้อความ Your response was submitted
ตัวอย่างหน้าจอการกรอกแบบฟอร์มส่งข้อมูลแจ้งซ่อมและแนบรูปถ่ายการเสียจริง
หน้าจอแสดงผลข้อความยืนยันการส่งข้อมูลฟอร์มสำเร็จ "Your response was submitted"
  • กลับมาที่หน้า Power Automate แล้วเปิดดูที่แถบ Run history จะพบว่า Flow ทำงานสำเร็จโดยมีสถานะเป็น Succeeded
หน้าประวัติการทำงาน Run history ของ Power Automate ที่แสดงสถานะ Succeeded

Step 7: ตรวจสอบผลลัพธ์ใน Excel Online

  • เปิดไฟล์ Excel Online (ระบบแจ้งซ่อมอุปกรณ์.xlsx) ที่ตั้งค่าไว้
  • จะพบว่าข้อมูลจากการกรอกฟอร์ม ทั้งชื่อผู้แจ้ง, ประเภทอุปกรณ์, ระดับความเร่งด่วน, รายละเอียดปัญหา รวมถึงลิงก์ไฟล์รูปภาพ ถูกบันทึกเพิ่มเข้าไปในตาราง Excel เป็นแถวใหม่โดยอัตโนมัติทันที
ผลลัพธ์ข้อมูลการแจ้งซ่อมและลิงก์รูปภาพที่ถูกบันทึกลงใน Excel Online อัตโนมัติ

ขั้นตอนการสร้างระบบรับแจ้งซ่อม Microsoft Forms บันทึกข้อมูลลงใน SharePoint List

หากองค์กรต้องการเก็บข้อมูลในรูปแบบฐานข้อมูลของ SharePoint เพิ่มเติม สามารถทำตามขั้นตอนดังนี้:

  • เข้าไปที่ SharePoint Site แล้วคลิกสร้าง List ใหม่ ตั้งชื่อว่า Maintenance_Request พร้อมจัดเตรียมคอลัมน์ให้สอดคล้องกับฟอร์ม
หน้า Site Contents บน SharePoint สำหรับสร้าง List สำรองข้อมูล
  • กลับมาที่หน้า Flow Designer ของ Power Automate แล้วคลิก + New step
  • ค้นหาและเลือก Action ของ SharePoint คือ Create item
  • กำหนดค่า Site Address และ List Name เป็น Maintenance_Request
  • ทำการจับคู่ Dynamic Content จากฟอร์มลงในแต่ละฟิลด์ของ SharePoint List รวมถึงเพิ่ม Expression แปลงวันที่ (FormatDateTime) หากจำเป็น แล้วกด Save
  • เมื่อมีการส่งฟอร์มเข้ามา ระบบจะทำการบันทึกข้อมูลลงทั้ง Excel Online และ SharePoint List พร้อมกันในคราวเดียวอย่างมีประสิทธิภาพ
การเพิ่ม Action แบบ Create item เพื่อบันทึกข้อมูลลง SharePoint List ใน Power Automate
ผลลัพธ์ข้อมูลการแจ้งซ่อมใหม่ที่ถูกบันทึกเข้ามาแสดงผลใน SharePoint List เรียบร้อย

เปรียบเทียบความแตกต่างระหว่างบันทึกเข้า Excel Online และ บันทึกข้อมูลลงใน SharePoint List

หัวข้อเปรียบเทียบเก็บลง Excel Onlineเก็บลง SharePoint List
ความสะดวกในการเริ่มต้นง่ายมาก เหมาะกับงานสเกลเล็กต้องตั้งค่า List และ Column ก่อน
เสถียรภาพระบบหากมีคนเปิดไฟล์ค้างไว้อาจติดสิทธิ์แก้ไข (File Lock Error)เสถียรสูง รองรับการเขียนข้อมูลพร้อมกันได้ดีเยี่ยม
การควบคุมสิทธิ์ (Security)กำหนดสิทธิ์ได้ทั้งไฟล์กำหนดสิทธิ์ลึกได้ถึงระดับคอลัมน์ หรือระดับแถวข้อมูล
การนำไปต่อยอดดึงไปทำ Graph / Excel Dashboard ได้ง่ายต่อกับ Power Apps, Power BI หรือ Approval Flow ได้สะดวกและปลอดภัยกว่า

ขั้นตอนการทำ Data Migration ย้ายข้อมูลจาก Excel เข้า SharePoint List

Step 1: สำรวจตารางข้อมูลต้นทางใน Excel Online

  1. เปิดไฟล์ Excel Online ต้นทาง (เช่น ระบบแจ้งซ่อมอุปกรณ์.xlsx)
  2. ตรวจสอบว่าข้อมูลถูกจัดให้อยู่ในรูปแบบ Excel Table เรียบร้อยแล้ว (เช่น ชื่อตาราง T_MaintenanceRequest)
ตารางข้อมูล Excel Online ต้นทางที่มีรายการแจ้งซ่อมจำนวนมาก

Step 2: ดึงข้อมูลทั้งหมดจาก Excel (List rows present in a table)

  1. ในหน้า Power Automate คลิก + New step ค้นหาและเลือก Action ของ Excel Online (Business) คือ List rows present in a table
  2. กำหนดค่าตำแหน่งไฟล์ Excel:
    1. Location: เลือก SharePoint Site หรือ OneDrive ที่เก็บไฟล์
    1. Document Library: เลือก Documents
    1. File: เลือกไฟล์ Excel ต้นทาง (ระบบแจ้งซ่อมอุปกรณ์.xlsx)
    1. Table: เลือกชื่อตาราง Excel (T_MaintenanceRequest)
การเพิ่ม Action แบบ List rows present in a table เพื่ออ่านข้อมูลทั้งหมดจากตาราง Excel

Step 3: วนลูปย้ายข้อมูลทีละแถวลง SharePoint List (Apply to each)

  1. คลิก + New step ค้นหาและเลือก Action Apply to each (หรือลาก Action SharePoint เข้ามาเพื่อให้ระบบสร้างให้อัตโนมัติ)
  2. ในช่อง Select an output from previous steps: เลือก Dynamic content ชื่อ value ที่ได้จากขั้นตอน List rows
  3. ภายในบล็อก Apply to each ให้เพิ่ม Action Create item (SharePoint)
  4. กำหนดค่า Site Address และ List Name ไปยัง SharePoint List ปลายทาง (Maintenance_Request)
  5. ทำการจับคู่ Dynamic content แต่ละฟิลด์จาก Excel ให้ตรงกับคอลัมน์ใน SharePoint List (เช่น ชื่อผู้แจ้ง, ประเภทอุปกรณ์ที่เสีย, ระดับความเร่งด่วน, รายละเอียดปัญหา)
  6. คลิกปุ่ม Save บริเวณมุมบนขวาเพื่อบันทึก Flow
การใช้ Apply to each วนลูปเพื่อสร้างข้อมูล Create item ลงใน SharePoint Listทีละแถว

Step 4: สั่งรัน Flow และตรวจสอบประวัติการทำงาน (Run History)

  1. สั่งรัน Flow แบบ Manual (หรือ Trigger ตามที่กำหนด) เพื่อเริ่มกระบวนการ Migration
  2. เปิดดูที่หน้า Run history จะพบบล็อก Apply to each กำลังประมวลผลวนลูปทีละรายการ (เช่น แสดงผลการทำงานรายการที่ 1 of 51)
  3. รอจนกว่า Status จะเปลี่ยนเป็น Succeeded
การตรวจสอบประวัติการรัน Flow ที่แสดงจำนวนการย้ายข้อมูลตามลูป เช่น 1 of 51

Step 5: ตรวจสอบข้อมูลปลายทางใน SharePoint List

  1. เปิดเข้าไปยัง SharePoint List ปลายทาง (Maintenance_Request)
  2. จะพบว่ารายการข้อมูลทั้งหมดถูกนำเข้าและสร้างขึ้นเป็น Item ใหม่ทีละแถวเรียงตามลำดับจาก Excel Online เรียบร้อยครบถ้วน!
ผลลัพธ์ข้อมูลทั้งหมดจาก Excel ที่ถูกย้ายมาบันทึกใน SharePoint List อย่างครบถ้วน

การเรียนรู้เทคนิค Power Automate Data Interactions ทั้งการเก็บบันทึก Log อีเมลลงในตารางสเปรดชีต, การจัดการข้อมูลแถวเฉพาะเจาะจง, การรับ Input ผ่านแบบฟอร์ม Microsoft Forms ไปจนถึงการจัดเก็บลงคลังข้อมูล SharePoint List ถือเป็นทักษะสำคัญที่ช่วยเปลี่ยนผ่านจากการใช้งานระบบอัตโนมัติระดับเริ่มต้นไปสู่การเป็นนักพัฒนาระบบอัตโนมัติระดับกลางอย่างแท้จริง

Q&A: คำถามที่พบบ่อยเกี่ยวกับการจัดการข้อมูล (FAQ)

Q1: ทำไมใน Action เลือกไฟล์ Excel แล้ว แต่ระบบแจ้งว่าไม่พบคอลัมน์หรือตารางข้อมูล?

A: สาเหตุส่วนใหญ่เกิดจากข้อมูลในสเปรดชีตยังไม่ได้ถูกเปลี่ยนรูปแบบให้เป็น Excel Table ค่ะ วิธีแก้ไขคือให้เปิดไฟล์สเปรดชีตขึ้นมา คลุมดำแถบข้อมูล แล้วกด Ctrl + T (หรือเลือก Format as Table) จากนั้นตั้งชื่อตารางให้เรียบร้อย แล้วกลับมาเลือกระบบอัตโนมัติใหม่อีกครั้งค่ะ

Q2: หากต้องการดึงไฟล์แนบ (Attachment) จาก Microsoft Forms ไปเก็บบันทึกไว้ด้วย ต้องทำอย่างไร?

A: คำตอบที่ได้จากช่องแนบไฟล์ในแบบฟอร์มจะถูกส่งมาในรูปแบบข้อความ JSON ค่ะ คุณจะต้องใช้ Action Parse JSON ร่วมกับคำสั่งดึงไฟล์จาก OneDrive/SharePoint เพื่อนำไฟล์แนบนั้นไปสร้างเป็นเอกสารหรือแนบต่อในคลังข้อมูลอีกทีค่ะ

Q3: ระหว่าง Excel Online กับ SharePoint List ควรเลือกใช้คลังข้อมูลไหนดีกว่ากัน?

A: หากเป็นงานทดลองส่วนตัว หรือเป็นตารางสรุปรายงานสั้นๆ การใช้ Excel จะทำได้สะดวกรวดเร็วค่ะ แต่หากเป็นงานระดับองค์กรที่มีผู้ใช้งานหลายคน มีการควบคุมสิทธิ์ หรือต้องการความเสถียรในการประมวลผล แนะนำให้เลือกใช้ SharePoint List เป็นคลังข้อมูลหลักจะดีที่สุดค่ะ

Q4: เมื่อผู้ใช้กดกรอกฟอร์มพร้อมๆ กันจำนวนมาก ระบบจะรับข้อมูลทันและมีโอกาสข้อมูลสูญหายไหม?

A: ระบบคลาวด์มีการจัดคิวการทำงาน (Queue System) ให้อัตโนมัติค่ะ แม้ผู้ใช้จะกดส่งแบบสอบถามเข้ามาพร้อมกันหลายสิบคน แพลตฟอร์มจะเข้ามารับ Trigger และทยอยประมวลผลนำข้อมูลไปบันทึกให้อย่างครบถ้วนโดยไม่มีข้อมูลตกหล่นค่ะ

Q5: สามารถเปลี่ยนจากการบันทึกข้อมูลลง Excel Online ไปใช้ Google Sheets ได้หรือไม่?

A: ได้แน่นอนค่ะ แพลตฟอร์มมีคอนเนกเตอร์ Google Sheets ให้เลือกใช้งาน โดยมี Action หลักๆ เช่น Add Row, Update Row หรือ Get Row ให้ใช้งานที่มีรูปแบบคล้ายคลึงกันอย่างมากค่ะ