n8n Thai
by n8n Thai

สร้าง Dashboard อัตโนมัติบน Google Sheets ด้วย n8n

ใช้ n8n ดึงข้อมูลจากหลายแหล่ง รวบรวม และอัปเดต Google Sheets Dashboard อัตโนมัติทุกวัน ไม่ต้องคีย์ข้อมูลเอง

สร้าง Dashboard อัตโนมัติบน Google Sheets ด้วย n8n

Dashboard บน Google Sheets เป็นที่นิยมมากในทีมที่ยังไม่ได้ใช้ BI Tool เฉพาะทาง เพราะทุกคนคุ้นเคยกับ Sheets อยู่แล้ว เข้าถึงได้จากทุกที่ และแชร์ง่าย ปัญหาคือการอัปเดตข้อมูลต้องทำมือทุกวัน ซึ่งกินเวลาและเกิดความผิดพลาดได้บ่อย

n8n แก้ปัญหานี้ด้วยการดึงข้อมูลจากทุกแหล่งมารวมและเขียนลง Sheets อัตโนมัติตามตาราง ทำให้ Dashboard อัปเดตตัวเองได้โดยไม่ต้องให้ใครมาแตะ

โครงสร้าง Dashboard ที่เหมาะกับ n8n

Dashboard ที่ n8n จัดการได้ดีมักมีโครงสร้างแบบนี้:

  • Sheet ข้อมูลดิบ: เก็บ Raw Data ที่ n8n เขียนลงมา เช่น Raw_Sales, Raw_Visitors, Raw_Orders
  • Sheet Summary: ใช้สูตร Sheets เช่น SUMIF, COUNTIF ดึงจาก Raw Data มาสรุปเป็น KPI
  • Sheet Dashboard: แสดง Chart และตัวเลขสรุปที่อ่านง่าย ดึงจาก Summary Sheet

n8n หน้าที่หลักคือเขียนข้อมูลลง Raw Data Sheet โดย Sheets จัดการ Aggregation และ Chart เอง แบ่งหน้าที่ชัดเจน ไม่ต้องให้ n8n คำนวณซ้ำ

ตัวอย่าง: Dashboard ยอดขายรายวัน

ข้อมูลที่ต้องการ:

  • ยอดขายรวมจากระบบ WooCommerce
  • จำนวน Line Followers ใหม่
  • ยอด Page Views จาก Google Analytics

Sheet Raw_Daily มี Header:

DateWC_RevenueWC_OrdersLine_FollowersGA_SessionsGA_Pageviews

Workflow n8n (ทำงานทุกวัน 00:05):

  1. Cron Node trigger ตี 12 กับ 5 นาที (หลัง Midnight เล็กน้อยให้ข้อมูลวานนี้ครบก่อน)
  2. HTTP Request Node ดึงยอดขายเมื่อวานจาก WooCommerce REST API
  3. HTTP Request Node ดึงสถิติ LINE OA จาก LINE API
  4. HTTP Request Node ดึงข้อมูลจาก Google Analytics Data API
  5. Set Node รวบรวมข้อมูลทั้งหมดเป็น Object เดียว
  6. Google Sheets Node Append Row ลง Sheet Raw_Daily

ผลลัพธ์คือ Sheet ที่มีข้อมูลรายวันสะสมทุกวัน และ Summary Sheet คำนวณ Week-on-Week, Month-to-Date ให้อัตโนมัติผ่านสูตร Sheets

เพิ่มการอัปเดต Cell เฉพาะจุด

บางครั้งไม่ต้องการ Append Row ทั้งแถว แต่ต้องการอัปเดตค่าใน Cell เฉพาะจุด เช่น Cell ที่แสดง “Last Updated” ใน Dashboard

ใช้ Google Sheets Node > Update Row ระบุ Row Number และ Column ที่ต้องการ:

Row: 2
Column A: Last Updated
Value: {{ $now.setZone('Asia/Bangkok').toFormat('dd/MM/yyyy HH:mm') }}

Dashboard ที่รวมหลายระบบ

ตัวอย่าง: Dashboard E-commerce ครบวงจร

รวมข้อมูลจาก Shopee, Lazada, WooCommerce, และ LINE OA ใน Sheets เดียว

Workflow หลักทำงานทุกเช้า 7 โมง:

  1. Cron Node trigger
  2. ดึงข้อมูลจาก 4 แหล่งพร้อมกันด้วย Parallel Execution (เพิ่ม Node แต่ละตัวในสาย):
    • HTTP Request → Shopee Open Platform API
    • HTTP Request → Lazada Open Platform API
    • HTTP Request → WooCommerce API
    • HTTP Request → LINE Analytics API
  3. Merge Node รวมผลลัพธ์ทั้ง 4 สายเข้าด้วยกัน
  4. Code Node คำนวณ Total Revenue รวมทุกช่องทาง
  5. Google Sheets Node เขียนลง Raw Sheet

ผลลัพธ์ทีมขายได้เห็น Dashboard อัปเดตทุกเช้าโดยไม่ต้องมีใครนั่งรวบรวมข้อมูลเอง

แจ้งเตือนเมื่อ KPI ผิดปกติ

n8n ไม่ได้แค่เขียนข้อมูล แต่ยังตรวจสอบค่าแล้วแจ้งเตือนได้ด้วย

Workflow แจ้งเตือน KPI ต่ำผิดปกติ:

  1. หลังจากเขียนข้อมูลลง Sheets แล้ว
  2. IF Node ตรวจสอบ: ยอดขายวันนี้ต่ำกว่า 80% ของค่าเฉลี่ย 7 วันที่ผ่านมาหรือไม่
  3. ถ้าใช่ → LINE Notify หรือ Slack แจ้ง Manager ทันที

ค่าเฉลี่ย 7 วันดึงได้จากสูตร Google Sheets แล้วอ่านกลับมาใน Workflow หรือคำนวณใน Code Node โดยตรง

เคล็ดลับทำ Dashboard ให้ดี

อย่าให้ n8n คำนวณ Aggregation: ปล่อยให้ Sheets ทำหน้าที่นั้นผ่านสูตร SUMIF, AVERAGEIF หน้าที่ n8n คือส่งข้อมูลดิบมาให้ครบถ้วนและถูกต้อง

เพิ่มคอลัมน์ run_id หรือ source: เมื่อเขียนข้อมูลจากหลายแหล่ง การมี Column ระบุว่าข้อมูลมาจากที่ไหนช่วยให้ Debug ได้ง่ายเมื่อตัวเลขผิดปกติ

สร้าง Error Log Sheet: ถ้า Workflow ดึงข้อมูลจาก API ใดไม่สำเร็จ ให้ Error Handler เขียน Error ลง Sheet แยกต่างหาก ทำให้รู้ว่า Data ไหนขาดในวันนั้น

Protect Summary Sheet: ตั้งค่า Sheet Protection ไม่ให้ใครแก้ไข Summary Sheet โดยไม่ตั้งใจ เพราะสูตรที่พังหนึ่งสูตรทำให้ Dashboard แสดงผลผิดทั้งหมด

ดูวิธีตั้งค่าพื้นฐานของ Google Sheets ใน n8n ได้ที่คู่มือ Google Sheets Node และถ้าต้องการใช้ Sheets เป็น CRM เต็มรูปแบบ ดูต่อได้ที่ใช้ Google Sheets เป็น CRM

อยากเรียน n8n แบบเป็นระบบ ตั้งแต่เริ่มต้นจนสร้าง Workflow ใช้งานจริงได้ ลองดู คอร์สสอน n8n ที่ aiunlock.co

Related posts