24 May 2025

เลิกใช้ VLookup หรือแม้แต่ XLookup หันมาใช้สูตรนี้ใน Excel 365 แทนดีกว่า

เวลาใช้สูตร VLookup หรือ XLookup แล้วรู้สึกไม่สบายใจ 2 ชั้น แบบนี้หรือเปล่า 

1. ไม่แน่ใจว่าสูตรจะหาค่าเจอไหม ถ้าไม่เจอแล้วเกิด error เตือนขึ้นมาจะต้องมาสร้างสูตรเพื่อแก้ error กันอีก

2. ถ้าหาค่าเจอแล้วก็ตาม ยังแอบคิดห่วงอยู่ในใจอีกว่า สิ่งที่หาเจอนี้ครบทุกรายการแล้วหรือยัง เพราะถ้ามีรายการที่บันทึกซ้ำกันเอาไว้ สูตรทั้งสองนี้จะกอดคอให้คำตอบเดียวเป็นรายการแรกที่หาเจอมาให้อีกนั่นแหละ หมดสิทธิ์เห็นรายการอื่นที่ซ้ำ

พอเปลี่ยนมาใช้ Excel 365 หรือ 2021 แนะนำให้ใช้สูตร Filter แทนดีกว่าครับ สูตร Filter จะช่วยหาทุกรายการที่มีรหัสตรงกับรหัสสินค้าที่ต้องการมาให้

เหนือชั้นขึ้นอีกนิด ให้ใช้สูตร CountIF ช่วยหาก่อนว่ารหัสนั้นมีกี่รายการ จะได้ไม่ต้องเสียเวลามาแก้ error ตามทีหลัง

* ถ้ามีเพียงรายการเดียว CountIF ในเซลล์ F8 = 1 จึงใช้ VLooup หรือ XLookup ตามสูตรในภาพนี้

=IF( $F$8=1, VLOOKUP( $F$5, MyData, 2, 0 ), 0)
=IF( $F$8=1, XLOOKUP( $F$5, ID, C5:D9 ), 0)

** ถ้ามีรายการเดียวหรือหลายรายการ CountIF ในเซลล์ F8 >= 1 จึงใช้ Filter ตามสูตรในภาพนี้

=IF( $F$8>=1, FILTER( C5:D9, ID=F5 ), 0 )

ถ้าคุณใช้ 365 เป็นหลัก เลิกใช้ VLookup หรือแม้แต่ XLookup หันมาใช้สูตร Filter แทนดีกว่า

Download ตัวอย่างจาก
https://drive.google.com/file/d/1k16UiuVrJKeI4VfDxSh3Kbhuzci9FFFJ/view?usp=sharing

+++++++++++++++++++++++++++++++++

Copilot ตอบ:

ใช่เลย! FILTER สามารถเป็นทางเลือกที่ดีกว่า XLOOKUP ในหลายกรณี โดยเฉพาะเมื่อทำงานกับ Dynamic Array เนื่องจากไม่ต้องกำหนดช่วงข้อมูลแบบคงที่

📌 ข้อดีของ FILTER เทียบกับ XLOOKUP ใน Dynamic Array:

  • ปรับช่วงข้อมูลอัตโนมัติ: FILTER ดึงเฉพาะค่าที่ตรงตามเงื่อนไขโดยไม่ต้องกำหนดช่วงแบบแน่นอน
  • รองรับการคืนค่าหลายรายการ: XLOOKUP ใช้คืนค่าเดี่ยว ส่วน FILTER สามารถคืนค่าเป็นช่วงข้อมูล
  • ความยืดหยุ่นสูง: ช่วยคัดกรองข้อมูลตามหลายเงื่อนไขได้ง่ายกว่าการซ้อนหลาย XLOOKUP
  • ทำงานร่วมกับ Dynamic Array ได้ดี: FILTER ปรับตัวกับข้อมูลที่เปลี่ยนแปลง ขณะที่ XLOOKUP ต้องระบุช่วงข้อมูลที่แน่นอน

📌 แต่ XLOOKUP ก็มีจุดเด่นของมัน:

  • หากต้องการ ค้นหาค่าที่เจาะจง และ ไม่มีหลายค่าที่ต้องคืนกลับ XLOOKUP อาจทำงานได้ตรงไปตรงมากว่า
  • สามารถใช้ค้นหาค่าที่ใกล้เคียง (Approximate Match) ได้ ซึ่ง FILTER ไม่รองรับโดยตรง

+++++++++++++++++++++++++++++++++

นี่คือข้อดีและข้อเสียของ FILTER และ XLOOKUP เพื่อช่วยให้คุณเลือกใช้ให้เหมาะสมกับงานของคุณ

🏆 FILTER

✅ ข้อดี:

  • คืนค่าหลายรายการพร้อมกัน → ใช้คัดกรองข้อมูลตามเงื่อนไขโดยไม่ต้องเขียนสูตรซ้อนกัน
  • รองรับ Dynamic Array → ข้อมูลที่เปลี่ยนแปลงจะปรับตามอัตโนมัติ
  • สามารถกำหนดเงื่อนไขหลายรายการได้ง่าย → ใช้ AND หรือ OR ได้สะดวก

❌ ข้อเสีย:

  • ไม่รองรับ Approximate Match → ไม่สามารถค้นหาค่าที่ใกล้เคียงที่สุดได้
  • ไม่สามารถค้นหาจากหลายตารางพร้อมกันโดยตรง → ต้องใช้สูตรช่วย เช่น VSTACK หรือ INDIRECT

🎯 XLOOKUP

✅ ข้อดี:

  • สามารถค้นหาค่าที่ใกล้เคียงที่สุดได้ (Approximate Match) → ใช้ในงานคำนวณเช่น ช่วงคะแนน
  • รองรับค่าเริ่มต้นเมื่อไม่พบข้อมูล → ป้องกัน Error โดยสามารถกำหนดค่า Default ได้
  • ค้นหาจากหลายตารางได้ → ใช้หลาย Lookup Array ผ่าน IF หรือ CHOOSE ได้

❌ ข้อเสีย:

  • คืนค่าได้เพียงหนึ่งค่าต่อเซลล์ → ไม่สามารถคืนค่าเป็น Dynamic Array ได้โดยตรง
  • ไม่ยืดหยุ่นเมื่อข้อมูลเปลี่ยนแปลง → ต้องใช้ OFFSET หรือ INDIRECT ช่วย

🧐 สรุป:

  • ใช้ FILTER ถ้าต้องการ คืนค่าหลายรายการ และรองรับ Dynamic Array
  • ใช้ XLOOKUP ถ้าต้องการ ค้นหาค่าที่แน่นอนหรือใกล้เคียง ในช่วงข้อมูล

+++++++++++++++++++++++++++++++++

เมื่อใช้ XLOOKUP กับ Dynamic Array คุณต้องระวังเรื่องช่วงข้อมูลที่อาจขยายหรือเปลี่ยนแปลงได้
วิธีที่แนะนำคือใช้ XLOOKUP ร่วมกับ Dynamic Array Functions เช่น SEQUENCE หรือ FILTER

✨ ตัวอย่าง 1: ค้นหาค่าใน Dynamic Array

สมมติว่าคุณมีข้อมูลรายชื่อสินค้าอยู่ในช่วง A2:A10 และราคาสินค้าอยู่ใน B2:B10
แต่ช่วงข้อมูลนี้สามารถเปลี่ยนแปลงขนาดได้ (Dynamic Array)

=XLOOKUP("สินค้า1", A2:A10, B2:B10)

☑ คำสั่งนี้จะค้นหาราคา "สินค้า1" จากช่วงข้อมูลที่กำหนด

🏆 วิธีใช้ XLOOKUP ร่วมกับ FILTER สำหรับ Dynamic Array

หากต้องการค้นหาราคาเฉพาะสินค้าที่ตรงตามเงื่อนไข เช่น ราคามากกว่า 500
ใช้ FILTER เพื่อกำหนดช่วงข้อมูลให้เหมาะกับ Dynamic Array

=XLOOKUP("สินค้า1", FILTER(A2:A10, B2:B10>500), FILTER(B2:B10, B2:B10>500))

☑ สูตรนี้จะค้นหาสินค้าเฉพาะที่ราคามากกว่า 500 และใช้กับ Dynamic Array

🔄 XLOOKUP ร่วมกับ SEQUENCE สำหรับ Dynamic Array

ถ้าคุณต้องการ เลือกข้อมูลแถวที่เปลี่ยนแปลงตลอดเวลา เช่น ดึงข้อมูลจากคอลัมน์ที่เปลี่ยนแปลง
ลองใช้ SEQUENCE เพื่อกำหนดช่วง Dynamic Array

=XLOOKUP(1000, SEQUENCE(10,1,500,100), SEQUENCE(10,1,1000,100))

☑ สูตรนี้จะค้นหาค่าที่ใกล้เคียงกับ 1000 ในชุดตัวเลขที่สร้างขึ้นแบบ Dynamic

🚀 สรุป

  • XLOOKUP สามารถใช้ร่วมกับ FILTER เพื่อค้นหาข้อมูลที่ตรงเงื่อนไข
  • XLOOKUP ร่วมกับ SEQUENCE เหมาะกับการดึงค่าตามช่วงที่เปลี่ยนไป
  • เลือกช่วงข้อมูลที่ Dynamic Array รองรับ เพื่อให้สูตรทำงานได้ถูกต้อง

+++++++++++++++++++++++++++++++++

ผมถามกลับไปตามนี้

สูตรนี้ =XLOOKUP("สินค้า1", A2:A10, B2:B10) ถ้าช่วงข้อมูลเป็น dynamic array การที่อ้างอิง A2:A10 กับ B2:B10 ไว้ พอตารางที่เป็น dynamic array ขยายขนาดทั้งจำนวน column และจำนวน row
สูตร =XLOOKUP("สินค้า1", A2:A10, B2:B10) จะขยายตำแหน่งอ้่างอิงในวงเล็บตามไหม

Copilot ตอบ

สูตร =XLOOKUP("สินค้า1", A2:A10, B2:B10) จะ ไม่ขยายอัตโนมัติ ตามขนาดของ Dynamic Array หากตารางมีการขยายทั้งแถวและคอลัมน์
เนื่องจาก XLOOKUP ใช้ช่วงแบบ Fixed References (เช่น A2:A10, B2:B10) ซึ่งไม่ได้ปรับขนาดตาม Spilled Range

🔄 วิธีแก้ไขให้ XLOOKUP รองรับ Dynamic Array

✅ ใช้ชื่อช่วงแบบ Dynamic Range:
ลองใช้ INDEX หรือ INDIRECT เพื่อช่วยกำหนดช่วงข้อมูลให้เปลี่ยนแปลงตาม Dynamic Array

=XLOOKUP("สินค้า1", A2:INDEX(A:A,ROWS(A2#)), B2:INDEX(B:B,ROWS(B2#)))

📌 สูตรนี้ใช้ A2# และ B2# เพื่อให้ XLOOKUP อ้างอิงช่วงข้อมูลที่ขยายอัตโนมัติ

✅ ใช้ FILTER เพื่อช่วยกำหนดช่วง:

=XLOOKUP("สินค้า1", FILTER(A2:A100, A2:A100<>""), FILTER(B2:B100, A2:A100<>""))

📌 สูตรนี้ช่วยคัดกรองค่าที่มีอยู่จริง และปรับช่วงให้รองรับ Dynamic Array

🚀 สรุป

  • XLOOKUP ไม่สามารถปรับขนาดช่วงข้อมูลเอง → ต้องใช้ INDEX หรือ FILTER ช่วย
  • ช่วงที่เป็น Dynamic Array ใช้ # (Spilled Range) ได้ → เช่น A2# เพื่อให้ XLOOKUP ดึงข้อมูลที่ขยายอัตโนมัติ

คุณลองใช้กับข้อมูลที่มีอยู่หรือยังครับ? 😊

 



 

19 May 2025

ชมคลิปเรียน Excel ออนไลน์ 600 กว่าบทเรียน ฟรี ตลอดชีพ

 

 


รวมลิงก์คลิปเรียน Excel ออนไลน์ถึงปี 2024 ของอาจารย์สมเกียรติ ฟุ้งเกียรติ
ผู้สร้างเว็บ ExcelExpertTraining.com 

คลิปออนไลน์นี้มีเนื้อหาครบทุกอย่างที่จำเป็นต้องใช้งาน รวมกว่า 600 คลิป
เป็นเนื้อหาที่ใช้ได้กับ Excel ทุก version
ของฟรีนี้ มีมูลค่าหลายหมื่นทีเดียว

เชิญเข้าเรียนที่เว็บ Vimeo.com ได้ฟรีตลอดชีพ ไม่ต้องสมัคร ไม่ต้องลงทะเบียน

เรียนแล้วสงสัย เชิญถามได้ที่ Facebook กลุ่มคนรัก Excel
https://www.facebook.com/groups/ThaiExcelLover/

+++++++++++++++++++++++++++++++

สุดยอดเคล็ดลับและลัดของ Excel
    
Tips Tricks and Traps รวมเคล็ดลับและวิธีลัดขั้นตอนเพื่อใช้ Excel สร้างงานได้เหนือกว่าที่ทราบกันทั่วไป
https://vimeo.com/user/113132977/folder/4028430?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/tips.zip  
 
+++++++++++++++++++++++++++++++
ฉลาดใช้สารพัดสูตร Excel สร้างงานอย่างมืออาชีพ
    
เรียนรู้วิธีวิเคราะห์ปัญหาเพื่อเลือกใช้สูตรให้ตรงกับงาน สร้างแฟ้มที่สามารถทำงานได้ยืดหยุ่น ง่ายต่อการใช้งานร่วมกัน
https://vimeo.com/user/113132977/folder/4166216?isPrivate=false    

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/fml.zip

+++++++++++++++++++++++++++++++
เรื่องรีบรู้เพื่อพร้อมใช้ Excel ทำงานแบบ Fast and Easy
    
เรียนรู้วิธีใช้ Excel สร้างงานได้ง่ายขึ้น เร็วขึ้น และสะดวกขึ้น ไม่ต้องใช้เวลานานกว่าจะสร้างเสร็จ … แล้วคุณจะรัก Excel มากขึ้น

https://vimeo.com/user/113132977/folder/1991348?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/fast.zip  
 
+++++++++++++++++++++++++++++++
บนเส้นทางลัด Pivot Table สู่การสร้าง Dashboards
    
เคล็ดการสร้าง Pivot Table ที่เหนือกว่าวิธีที่รู้จักกัน ทำให้ใช้งานได้ยืดหยุ่นมากกว่าเดิม เพื่อใช้คู่กับกราฟบน Dashboards
https://vimeo.com/user/113132977/folder/1987722?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/pivot.zip   

+++++++++++++++++++++++++++++++
Excel Dynamic Reports
    
สร้างรายงานสำหรับผู้บริหาร ชี้ตัวเลขสำคัญได้ชัดเจน สามารถวางแผนและตัดสินใจได้ง่ายขึ้น ยืดหยุ่น และรวดเร็วยิ่งขึ้น
https://vimeo.com/user/113132977/folder/2062894?isPrivate=false
https://vimeo.com/user/113132977/folder/2095295?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/reports.zip   

+++++++++++++++++++++++++++++++
คิดจะใช้ Power BI ... หันมาใช้ Excel จัดการข้อมูลก่อนดีกว่า
    
เจาะลึกวิธีจัดการกับข้อมูลสารพัดได้อย่างให้จุใจ พร้อมนำไปคำนวณหรือใช้กับ Access, Power BI, หรือแอปอื่นได้ทันที
https://vimeo.com/user/113132977/folder/2133108?isPrivate=false
https://vimeo.com/user/113132977/folder/2167672?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/data.zip

+++++++++++++++++++++++++++++++
เคล็ดการสร้างกราฟให้เห็นปุ๊บ-เข้าใจปั๊บ + ปรับแต่ง User Interfaces ให้ดูดี
    
เคล็ดลับการสร้างกราฟและปรับแต่งหน้าตาตารางให้ดูเด่น ใช้งานง่าย เพื่อใช้นำเสนอผลงาน ช่วยในการวางแผนและตัดสินใจได้อย่างยืดหยุ่น
https://vimeo.com/user/113132977/folder/2222911?isPrivate=false
https://vimeo.com/user/113132977/folder/2254932?isPrivate=false
https://vimeo.com/user/113132977/folder/2235684?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/chartui.zip   

+++++++++++++++++++++++++++++++
เคล็ดการเพิ่มผลงาน ลดความซับซ้อนของงานด้วย Excel VBA +Macro
    
ใช้เคล็ดลับพิเศษที่ไม่เหมือนใคร ทำให้ VBA ที่ว่ายาก เป็นขั้นสูง กลายเป็นเรื่องง่ายจนนึกไม่ถึง เพื่อใช้จัดการข้อมูลอัตโนมัติ
https://vimeo.com/user/113132977/folder/2951051?isPrivate=false
https://vimeo.com/user/113132977/folder/2921584?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/vba.zip   

+++++++++++++++++++++++++++++++
ประยุกต์ใช้ Excel ในงานหายอดคงเหลือและสร้าง Invoice
    
เรียนรู้แบบฝึกปฏิบัติ เพื่อสร้างตารางคำนวณยอดคงเหลือทีละขั้น ต่อจากนั้นจะเรียนรู้วิธีการนำข้อมูลไปสร้าง Invoice
https://vimeo.com/user/113132977/folder/7451123?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/online/download/ProductSummaryInvoice.zip
   
+++++++++++++++++++++++++++++++
ดูดวงให้สนุกด้วย Excel
    
เลิกท่อง เลิกจำ ไม่ต้องใช้ปฏิทิน เบาสมองขึ้นเยอะ ด้วยโปรแกรม 4ZSuriya บน Excel โหราศาสตร์ไทยง่ายขึ้น กลายเป็นของสนุก
https://vimeo.com/user/113132977/folder/2025323?isPrivate=false

Download ตัวอย่าง
https://www.excelexperttraining.com/download/test4zr.xlsb

+++++++++++++++++++++++++++++++

What's New in Excel
https://vimeo.com/user/113132977/folder/15774454?isPrivate=false

Excel Expert Guide รวมสูตรที่ใช้เป็นประจำ
https://vimeo.com/user/113132977/folder/2001435?isPrivate=false
https://www.ExcelExpertTraining.com/download/ExpertGuide.pdf

Excel Baby Steps
https://vimeo.com/user/113132977/folder/3240213?isPrivate=false

Date and Time วิธีใช้วันที่และเวลา
https://vimeo.com/user/113132977/folder/4261828?isPrivate=false

Excel Expert Training On TV
https://vimeo.com/user/113132977/folder/4882167?isPrivate=false

Excel System Development
https://vimeo.com/user/113132977/folder/6338907?isPrivate=false

Excel Expert Training at SCG
https://vimeo.com/user/113132977/folder/3159484?isPrivate=false
https://vimeo.com/user/113132977/folder/3159800?isPrivate=false
https://vimeo.com/user/113132977/folder/3159913?isPrivate=false
https://vimeo.com/user/113132977/folder/3159932?isPrivate=false
https://vimeo.com/user/113132977/folder/3159952?isPrivate=false

Download ตัวอย่าง
https://drive.google.com/file/d/1a0M-FVjFrnRxQPcvNN6N9-Qqjb3Wjk2Y/view?usp=sharing

+++++++++++++++++++++++++++++++

 

ตั้งแต่ 13 มิถุนายน 2024 จนถึงวันนี้มีผู้สนใจสมัครเรียนออนไลน์ฟรี 1 ปีที่เว็บ XLSiam.com รวม 2,231 คน
.
วันนี้เปิดให้เรียนฟรีได้ที่เว็บ Vimeo.com ซึ่งเป็นเว็บต้นทางที่ผมใช้เก็บคลิปวิดีโอทั้งหมดไว้ จะได้เข้าเรียนได้อย่างอิสระ ไม่ต้องลงทะเบียน ฟรีตลอดไป ... ตราบเท่าที่ผมยังใช้บริการของ Vimeo.com อยู่นะครับ
.
ลิงก์ที่แจกคราวนี้มีมากกว่าที่ทำไว้ใน XLSiam.com เรียกว่าเป็นคลิปแทบทั้งหมดทีเดียว จะแตกต่างจากการเรียนใน XLSiam.com อยู่บ้างตรงที่ใน XLSiam.com นั้นมีระบบช่วยในการจำบทเรียนว่าเรียนบทไหนไปแล้วบ้างกับมีระบบ search ค้นหาเรื่องที่อยากเรียน โดยต้องสมัครลงทะเบียน เมื่อครบ 1 ปีแล้วก็ต้องสมัครใหม่ นอกจากนั้นผู้เข้าเรียนจากบางประเทศจะใช้ XLSiam.com ไม่ได้เพราะผมตั้งระบบป้องกันพวก hacker เอาไว้
.
ส่วนการเรียนในเว็บ Vimeo.com นี้ อิสระทุกอย่างครับ โดยต้องใช้ลิงก์ที่ผมรวบรวมมาให้จึงจะเข้าดูคลิปได้


 ด้านล่างนี้เป็นความเห็นจากผู้เข้าเรียนออนไลน์ 





 


    

18 May 2025

เลิกใช้ Filter บนเมนูที่ไม่ได้บอกว่ากรองอะไรอยู่ ... หันมาใช้แบบนี้แทนดีกว่า

คุณเคยสงสัยใช่ไหมว่าข้อมูลที่เห็นอยู่นั้นครบตามที่ต้องการหรือเปล่า มีรายการอะไรบ้างหายไป

ต่อให้แกะโดยคลิกที่ปุ่มกรองบนหัวตาราง ในกรอบสีแดง มองออกไหมว่าที่สั่ง Filter กรองรายการไว้โดยการคลิกบนเมนู Data > Filter นั้นน่ะ ได้สั่งให้กรองอะไรไว้บ้าง ถ้ามีหลายเรื่องให้เลือกต้องลำบากทีเดียวกว่าจะหาเจอว่าอยากให้กรองอะไรบ้าง และที่แย่ที่สุดพอสั่งกรองไปแล้ว ใครบ้างจำได้บ้างว่าตารางที่เห็นนั้นมีรายการอะไรหายไป


แทนที่จะใช้ Filter บนเมนูหรือ Filter ที่เกิดพร้อมกับการใช้ PivotTable แล้วต้องทำ Slicer ช่วยอีกขั้น หันมาใช้สูตร Filter ใน Excel 365 แทน โดยสร้างสูตรนี้ลงไปในเซลล์ K6

=FILTER( BudgetTable, ( COUNTIF( ITEMChoice, ITEM )>=1 ) + (COUNTA( ITEMChoice )=0) ) 

BudgetTable เป็นชื่อตารางข้อมูลด้านซ้ายทั้งหมด
ITEMChoice เป็นตารางในกรอบสีเขียว มีไว้ใส่ชื่อ Item ที่อยากให้แสดง
Item เป็นชื่อตารางใน Column Item ในตารางด้านซ้าย

COUNTIF( ITEMChoice, ITEM )>=1 เป็นเงื่อนไขที่ใช้กรองตามที่ใส่ไว้ในกรอบสีเขียว

(COUNTA( ITEMChoice )=0 เป็นเงื่อนไขให้นับว่าถ้าไม่ได้กรอกอะไรไว้เลยให้แสดงรายการทั้งหมด

Download ตัวอย่างได้จาก

https://drive.google.com/file/d/1gtg60Ze85lJ2YZUiBRZGQ9ymdbVbvzPh/view?usp=sharing

+++++++++++++++++++++

สำหรับคนที่ชอบใช้ PivotTable ให้จัดลำดับการสร้างใหม่โดยให้สร้างจากตารางที่ได้จากสูตร Filter นี้ เวลาใช้ Slicer จะได้มีตัวเลือกตามที่กรองมาก่อนแล้ว โดยปรับสูตรใหม่ให้มีหัวตารางติดมาด้วยเพื่อใช้เป็น Field Name ใน Pivot

=VSTACK( B2:G2,
FILTER(BudgetTable,
(COUNTIF(ITEMChoice,ITEM)>=1)+(COUNTA(ITEMChoice)=0)) )

 

อย่าไปสร้าง Pivot จากตารางฐานข้อมูลโดยตรงแล้วต้องมากรองทีหลัง แนะนำว่าอย่าไปเสียเวลาใช้ PivotTable อีกเลยครับ ถึงขั้นนี้แล้วให้ใช้สูตร GroupBY หรือ PivotBY ต่อไปเลยดีกว่า

 

=============

Copilot แนะนำตามนี้

การใช้ FILTER แทนการกรองด้วยเมนู Filter ใน Excel มีข้อดีหลายอย่างเลยครับ! โดยเฉพาะอย่างยิ่งในกรณีที่ต้องการให้ข้อมูลที่กรองออกมามีความ โปร่งใส และสามารถ มองเห็นเงื่อนไขการกรองได้ชัดเจน ซึ่งเมนู Filter ไม่สามารถทำได้

🔹 ข้อดีของสูตร FILTER เทียบกับเมนู Filter

✅ เห็นเงื่อนไขชัดเจน – สูตรระบุเกณฑ์การกรองไว้ในเซลล์ ทำให้เห็นว่าเรากรองข้อมูลตามเงื่อนไขอะไร
✅ อัปเดตอัตโนมัติ – ถ้าข้อมูลเปลี่ยนแปลง หรือมีการเพิ่มแถว สูตร FILTER จะอัปเดตโดยอัตโนมัติ
✅ คำนวณต่อได้ง่าย – สามารถใช้ผลลัพธ์จาก FILTER ไปประมวลผลต่อในสูตรอื่น เช่น SUM, AVERAGE
✅ ไม่มีผลกระทบกับข้อมูลต้นฉบับ – เมนู Filter อาจทำให้ข้อมูลบางส่วนถูกซ่อนไปชั่วคราว แต่ FILTER สร้างตารางข้อมูลใหม่ที่แสดงเฉพาะข้อมูลที่ตรงเงื่อนไข

🔹 ตัวอย่างการใช้ FILTER แทนเมนู Filter

แทนที่จะใช้ Filter บนเมนู แล้วต้องคอยเช็กว่าข้อมูลถูกกรองอะไรอยู่ สามารถใช้สูตร FILTER ได้เลย

=FILTER(A2:E100, B2:B100="Sales")
  • กรองเฉพาะข้อมูลที่อยู่ในคอลัมน์ B2:B100 ที่เป็น "Sales"
  • แสดงผลลัพธ์ออกมาในช่วงที่กำหนด
  • ข้อมูลอัปเดตอัตโนมัติเมื่อช่วงข้อมูลต้นฉบับเปลี่ยน

💡 แนวทางที่ดีขึ้น:
หากต้องการให้ตารางที่ได้จาก FILTER สามารถนำไปใช้กับ PivotTable หรือ Slicer ได้ ลองใช้ VSTACK รวมหัวตาราง เช่น:

=VSTACK(A1:E1, FILTER(A2:E100, B2:B100="Sales"))

แบบนี้จะได้ตารางที่มีหัวข้อครบถ้วน สามารถใช้ต่อกับ PivotTable ได้ทันที!



 

17 May 2025

ดูยังไงว่าใช้ของใหม่ๆใน Excel 365 แล้วได้ประโยชน์เต็มที่

แฟ้มที่สร้างขึ้นต้องสามารถทำงานแบบ Dynamic โดยไม่ต้องพึ่ง PivotTable, VBA, Power Query อีกต่อไป

ลักษณะการใช้งานแบบ Dynamic เป็นยังไง

1. เราไม่ต้องไปทำอะไร แก้ไขอะไรใหม่ ไม่ต้องเสียเวลาไป Refresh เมื่อข้อมูลที่เก็บไว้มีการเพิ่มจำนวนรายการ

2. พื้นที่ตารางที่สร้างสูตรไว้จะขยายขอบเขตตารางให้เองเพื่อรับกับจำนวนรายการที่เพิ่มขึ้น

3. ลดขั้นตอนการใช้งาน ไม่จำเป็นต้องสร้างสูตรซ้อนกันหลายชั้นหรือใช้สร้างตาราง (Help Column) เพิ่มเพื่อช่วยคำนวณทีละขั้น

4. ลดจำนวนตาราง จำนวนชีท จำนวนแฟ้ม ไม่จำเป็นต้องมีหลายชีท หลายแฟ้มที่มีหน้าตาเหมือนกัน แต่ต่างกันแค่ตัวเลข

5. ผู้ใช้แฟ้มสามารถใช้งานได้ง่าย เมื่อสั่งให้ Excel ทำงานซ้ำสามารถทำได้ด้วยตนเอง โดยไม่ต้องพึ่งพาการใช้เมนูสั่งงานใหม่หรือใช้ VBA

Excel เพิ่มความสามารถในการทำงานแบบ Dynamic ตั้งแต่กันยายน 2018 โดยเริ่มใช้สูตรที่ทำงานแบบ Dynamic Array จากนั้นก็ทะยอยปรับปรุง Excel ให้มีสูตรที่ทำงานแบบ Dynamic เพิ่มขึ้น ซึ่งเป็นไปได้ว่าในไม่ช้าจะมีสูตรที่สามารถทำงานแบบ Power Query ได้อีกด้วย

แนะนำว่าอย่าเพิ่งรีบร้อนไปแก้แฟ้มเก่าหรือรีบนำของใหม่ๆไปใช้ ควรรออีกสักพักให้ Excel ยกกองทัพทั้งหมดที่แอบซุ่มไว้ออกมา จะได้พร้อมรบแบบเต็มอัตราศึกก่อน ตอนนั้นแหละที่เราต้องปรับเปลี่ยนวิธีใช้ Excel ให้ทำงานร่วมกับ AI หรือ Copilot กันขนานใหญ่ ตอนนี้คนที่ใช้ Excel 365 ควรติดตามเรียนรู้ของใหม่ๆได้จากเว็บของไมโครซอฟท์โดยคลิกที่ลิงก์นี้

หรือไปที่  https://techcommunity.microsoft.com/category/microsoft365/blog/excelblog?wt.mc_id=M365-MVP-4000499

 


ที่มาของภาพ https://exceljet.net/new-excel-functions

Copilot แนะนำตามนี้
.
ถ้าต้องการให้แน่ใจว่าใช้ฟีเจอร์ใหม่ของ **Excel 365** ได้เต็มประสิทธิภาพ ลองพิจารณาแนวทางเหล่านี้:
.
### 1. **ติดตามฟีเจอร์ใหม่**
Microsoft อัปเดต Excel 365 อย่างต่อเนื่อง ฟีเจอร์ล่าสุดที่น่าสนใจ เช่น:
- **Dynamic Arrays** ที่ช่วยให้สูตรสามารถขยายผลลัพธ์ได้อัตโนมัติ
- **XLOOKUP** ที่มาแทน VLOOKUP และ INDEX-MATCH ให้ใช้งานง่ายขึ้น
- **GROUPBY** ที่ช่วยจัดกลุ่มข้อมูลแบบไดนามิก
- **Copilot ใน Excel** ที่ช่วยวิเคราะห์ข้อมูลและจัดระเบียบข้อมูลอัตโนมัติ
.
### 2. **ทดลองใช้ฟีเจอร์ใหม่กับงานจริง**
ลองนำฟีเจอร์ใหม่มาใช้กับงานที่ทำเป็นประจำ เช่น:
- ใช้ **FILTER** แทน AutoFilter เพื่อให้ข้อมูลอัปเดตตามเงื่อนไขแบบไดนามิก
- ใช้ **SEQUENCE** สร้างลำดับตัวเลขโดยไม่ต้องพึ่ง VBA
- ใช้ **CHOOSEROWS** ดึงข้อมูลเฉพาะแถวที่ต้องการจากชุดข้อมูลใหญ่
.
### 3. **เปรียบเทียบกับวิธีเดิม**
ลองเปรียบเทียบการใช้ฟีเจอร์ใหม่กับวิธีเดิม เช่น:
- ใช้ **GROUPBY** แทน PivotTable แล้วดูว่าการวิเคราะห์ข้อมูลเร็วขึ้นหรือไม่
- ใช้ **Power Pivot** เพื่อดูว่าการจัดการข้อมูลขนาดใหญ่มีประสิทธิภาพขึ้นหรือไม่
.
### 4. **ติดตามแหล่งข้อมูล**
https://support.microsoft.com/th-th/office/มีอะไรใหม่ใน-excel-2024-สําหรับ-windows-และ-mac-faee26b6-ad74-40a8-9304-aa6db716553f
+++++++++++++++++++++++++++++++
.
แนวคิดการทำงานแบบ **Dynamic** ใน Excel 365 เป็นการเปลี่ยนแปลงครั้งใหญ่ที่ช่วยให้การจัดการข้อมูลมีความยืดหยุ่นและลดขั้นตอนที่ยุ่งยากลงอย่างมาก โดยเฉพาะเมื่อใช้ **Dynamic Arrays** ซึ่งเปิดตัวตั้งแต่ปี 2018 และได้รับการพัฒนาอย่างต่อเนื่อง
.
### **ลักษณะการทำงานแบบ Dynamic**
1. **ไม่ต้อง Refresh หรือแก้ไขสูตร** – เมื่อข้อมูลเพิ่มขึ้น ตารางจะขยายอัตโนมัติ
2. **ลดการใช้สูตรซ้อนกันหลายชั้น** – ไม่ต้องพึ่ง **Helper Columns** หรือสูตรที่ซับซ้อน
3. **ลดจำนวนชีทและแฟ้ม** – ไม่ต้องสร้างชีทซ้ำๆ เพียงเพื่อแสดงข้อมูลที่แตกต่างกัน
4. **ใช้งานง่ายขึ้น** – ผู้ใช้สามารถสั่งให้ Excel ทำงานซ้ำได้โดยไม่ต้องใช้ VBA หรือ Power Query
.
### **ฟีเจอร์ที่ช่วยให้ Excel ทำงานแบบ Dynamic**
- **FILTER** – ดึงข้อมูลตามเงื่อนไขโดยไม่ต้องใช้ AutoFilter
- **SEQUENCE** – สร้างลำดับตัวเลขอัตโนมัติ
- **XLOOKUP** – แทนที่ VLOOKUP และ INDEX-MATCH ให้ใช้งานง่ายขึ้น
- **CHOOSEROWS** – เลือกแถวที่ต้องการจากชุดข้อมูลขนาดใหญ่
- **GROUPBY** – จัดกลุ่มข้อมูลแบบไดนามิกโดยไม่ต้องใช้ PivotTable
.
### **ติดตามการพัฒนา Excel 365**
Microsoft กำลังพัฒนา Excel ให้รองรับการทำงานแบบ Dynamic มากขึ้น และมีแนวโน้มว่าในอนาคตสูตรบางตัวอาจสามารถทำงานแบบเดียวกับ **Power Query** ได้โดยตรง ซึ่งจะช่วยให้การจัดการข้อมูลมีประสิทธิภาพมากขึ้น
.
- [ข้อมูลจาก Microsoft Support](https://support.microsoft.com/en-us/office/dynamic-array-formulas-and-spilled-array-behavior-205c6b06-03ba-4151-89a1-87a7eb36e531)

 

 

 

 

 

16 May 2025

ทำไมสูตร FILTER มักจะเป็นสูตรที่คิดถึงแรกสุดเมื่อใช้ Excel 365

Copilot ตอบ :
.
สูตร `FILTER` ใน Excel 365 เป็นหนึ่งในฟังก์ชันที่ได้รับความนิยมมากที่สุดสำหรับการจัดการข้อมูลแบบไดนามิก เพราะมันช่วยให้สามารถกรองข้อมูลตามเงื่อนไขได้อย่างง่ายดายและยืดหยุ่น โดยไม่ต้องใช้ตัวกรองแบบตาราง (`Table Filters`) หรือ `Advanced Filter` แบบเดิมที่ต้องตั้งค่าใหม่ทุกครั้งที่มีการเปลี่ยนแปลงข้อมูล
.
เหตุผลที่ `FILTER` มักจะเป็นสูตรที่คิดถึงแรกสุดเมื่อใช้ Excel 365 ได้แก่:

1. **ความยืดหยุ่น** – สามารถดึงข้อมูลตามเงื่อนไขที่กำหนดได้แบบไดนามิก โดยไม่ต้องปรับช่วงข้อมูลเอง
.
2. **ทำงานร่วมกับสูตรอื่นได้ดี** – สามารถใช้ร่วมกับ `SORT`, `UNIQUE`, หรือแม้แต่ `SEQUENCE` เพื่อสร้างชุดข้อมูลแบบไดนามิก
.
3. **แทนการใช้ PivotTable ในบางกรณี** – เมื่อไม่ต้องการตั้งค่า PivotTable แต่ต้องการดึงข้อมูลเฉพาะส่วนโดยอัตโนมัติ
.
4. **ลดการใช้ VBA** – ช่วยลดความจำเป็นในการเขียนโค้ด VBA เพื่อทำการกรองข้อมูลแบบอัตโนมัติ
.
ถ้าคุณเคยใช้ `FILTER` กับสูตรอื่น ๆ เช่น `CHOOSEROWS` หรือ `XLOOKUP` ในบริบทของการจัดการข้อมูลที่มีขนาดใหญ่ ก็น่าจะเห็นภาพชัดขึ้นว่า Excel 365 ได้เปลี่ยนแนวทางการทำงานกับข้อมูลไปอย่างมาก!
. 

เมื่อมีการเปลี่ยนแปลงข้อมูลในแฟ้ม Excel อาจต้องดำเนินการหลายอย่างเพื่อให้ข้อมูลถูกต้องและเป็นปัจจุบัน

สิ่งที่อาจต้องทำใหม่เมื่อข้อมูลเปลี่ยนแปลง

  1. รีเฟรชการคำนวณ

    • Excel โดยปกติจะคำนวณสูตรใหม่อัตโนมัติ แต่ถ้าเป็นการตั้งค่า Manual Calculation ต้องกด F9 เพื่อรีเฟรช
  2. อัปเดตช่วงข้อมูล

    • ถ้าข้อมูลใหม่เพิ่มขึ้น อาจต้องปรับช่วงข้อมูลในสูตรที่อ้างอิง เช่น VLOOKUP, INDEX, หรือ MATCH
    • แต่ถ้าใช้ สูตรแบบ Dynamic เช่น FILTER, SORT, UNIQUE, หรือ CHOOSEROWS ข้อมูลจะอัปเดตอัตโนมัติ
  3. ตรวจสอบ PivotTable

    • ถ้ามีการเพิ่มข้อมูลในแหล่งข้อมูล ต้องกด Refresh เพื่อให้ PivotTable ดึงข้อมูลล่าสุด
  4. อัปเดตแผนภูมิ (Charts)

    • ถ้าช่วงข้อมูลเปลี่ยน อาจต้องปรับช่วงข้อมูลของกราฟใหม่ หรือใช้ Table หรือ Dynamic Named Ranges เพื่อให้กราฟอัปเดตอัตโนมัติ
  5. ตรวจสอบเงื่อนไขการกรองข้อมูล

    • ถ้าใช้ AutoFilter อาจต้องตั้งค่ากรองใหม่ แต่ถ้าใช้ FILTER ข้อมูลจะอัปเดตตามเงื่อนไขเอง
  6. ตรวจสอบการเชื่อมโยงระหว่างไฟล์ (External Links)

    • ถ้าข้อมูลมาจากแหล่งภายนอก อาจต้องอัปเดตลิงก์ (Edit Links) หรือใช้ Power Query เพื่อดึงข้อมูลใหม่
  7. ตรวจสอบ Power Query และ Power Pivot

    • ถ้าใช้ Power Query อาจต้องกด Refresh All เพื่อให้ข้อมูลในตารางเชื่อมโยงอัปเดต
    • ถ้าใช้ Power Pivot อาจต้องอัปเดตโมเดลข้อมูล
  8. ตรวจสอบการจัดรูปแบบตามเงื่อนไข (Conditional Formatting)

    • ถ้ามีการเพิ่มข้อมูล อาจต้องขยายช่วงของเงื่อนไขการจัดรูปแบบ

หากคุณกำลังใช้ Excel 365 ที่มี Dynamic Arrays และสูตรเช่น FILTER หรือ SEQUENCE คุณจะสังเกตว่าหลายขั้นตอนเหล่านี้สามารถลดลงไปได้มาก เพราะข้อมูลจะปรับเปลี่ยนตามเงื่อนไขโดยอัตโนมัติ  

ใช่เลย! FILTER สามารถช่วยทำให้การใช้ Slicer มีความยืดหยุ่นมากขึ้น โดยเฉพาะเมื่อคุณต้องการให้ข้อมูลที่แสดงปรับเปลี่ยนแบบไดนามิกตามเงื่อนไขที่เลือก

วิธีที่ FILTER ช่วยทำให้ Slicer ใช้งานง่ายขึ้น

  1. ดึงข้อมูลเฉพาะตาม Slicer Selection

    • หากคุณใช้ PivotTable และ Slicer ทำหน้าที่กรองข้อมูลแบบอินเตอร์แอคทีฟ แต่บางครั้งอาจต้องการแสดงผลลัพธ์ในช่วงข้อมูลนอก PivotTable
    • FILTER สามารถใช้ดึงข้อมูลจากตารางหลักโดยอิงตามค่าที่เลือกใน Slicer ได้
  2. ลดความจำเป็นในการสร้างหลาย PivotTables

    • ในวิธีดั้งเดิม หากต้องการกรองข้อมูลให้แตกต่างกันในหลายพื้นที่ อาจต้องสร้าง PivotTables หลายชุด
    • แต่ FILTER สามารถใช้ควบคู่กับ Slicer ที่อ้างถึงเซลล์ผลลัพธ์ และช่วยให้ดึงข้อมูลเฉพาะที่ต้องการได้โดยไม่ต้องทำซ้ำ
  3. ทำงานร่วมกับ Dynamic Arrays

    • ข้อมูลที่ผ่าน FILTER จะอัปเดตอัตโนมัติเมื่อมีการเปลี่ยนค่าใน Slicer
    • ทำให้การนำเสนอข้อมูลดูเป็นระบบมากขึ้น โดยไม่ต้องกด Refresh เหมือนใน PivotTable

ตัวอย่างการใช้งาน

สมมติว่าคุณมีตารางข้อมูล SalesData และต้องการกรองข้อมูลตาม ประเภทสินค้า ที่เลือกใน Slicer

คุณสามารถใช้ FILTER ดึงข้อมูลที่ตรงกับค่าที่เลือก เช่น:

=FILTER(SalesData, SalesData[Category]=SelectedCategory)

โดยที่ SelectedCategory เป็นเซลล์ที่รับค่าจาก Slicer

เพิ่มเติม

หากคุณกำลังใช้ FILTER ควบคู่กับ UNIQUE และ SORT ก็สามารถทำให้ข้อมูลที่แสดงดูเป็นระเบียบและไม่ซ้ำซ้อนได้ด้วย

 

++++++++++++++++++++++++++++
.
ผมให้ข้อสังเกตจากคำตอบ Copilot
.
1. สูตร Filter ช่วยทำให้ไม่ต้องใช้ตัวกรองแบบตาราง (`Table Filters`) หรือ `Advanced Filter` แบบเดิมที่ต้องตั้งค่าใหม่ทุกครั้งที่มีการเปลี่ยนแปลงข้อมูล
.
2. สูตรรุ่นใหม่ใน Excel 365 ได้เปลี่ยนแนวทางการทำงานกับข้อมูลไปอย่างมาก

.


 

09 May 2025

Power BI สู้ Excel ไม่ได้ตอนไหนบ้าง

อยากใช้ Power BI ให้ทำงานได้ตามใจ ต้องใช้สูตร DAX ครับ ซึ่งยากพอตัวทีเดียว ผู้ใช้ต้องเรียนรู้กันใหม่เพราะต่างจาก Excel อีกทั้งตัวสูตรก็ไม่ได้เปิดให้เห็นได้ง่ายๆเหมือนที่เห็นในเซลล์ได้โดยตรงแบบ Excel
ที่น่าห่วงอย่างมากคือการหาคนใหม่มาใช้ Power BI แทนคนเก่าครับ และยากที่จะแกะว่าคนเก่าทำอะไรไว้บ้าง
 
Power BI สู้ Excel ไม่ได้ตอนไหนบ้าง Copilot ตอบตามนี้ครับ
 
Power BI มีจุดแข็งมากในการวิเคราะห์ข้อมูลขนาดใหญ่, การสร้าง Dashboard ที่มีความ Interactive และการเชื่อมต่อข้อมูลจากหลายแหล่งแบบอัตโนมัติ แต่ก็มีบางด้านที่ Excel ยังเหนือกว่า เช่น:
 
- การจัดการข้อมูลแบบละเอียด – Excel ให้ความยืดหยุ่นในการจัดการเซลล์, แก้ไขข้อมูลแบบ Manual, คำนวณสูตรต่าง ๆ ได้โดยตรง ซึ่ง Power BI เน้นการนำเสนอข้อมูลมากกว่า
 
- การสร้างสูตรและการคำนวณขั้นสูง – Excel มีฟังก์ชันมากมายที่ช่วยให้คุณสามารถทำการคำนวณได้อย่างอิสระ เช่น การใช้ Dynamic Arrays, Power Pivot และ DAX ขณะที่ Power BI เน้นไปที่การใช้ DAX ใน Data Model
 
- การวิเคราะห์แบบ Ad-hoc – Excel เหมาะกับการวิเคราะห์ข้อมูลแบบเจาะจงที่ต้องการความยืดหยุ่นสูง สามารถสร้าง PivotTable, Data Table หรือแม้แต่ใช้ Solver เพื่อทำการวิเคราะห์ที่ซับซ้อนได้ทันที
 
- การแชร์และการทำงานร่วมกัน – แม้ว่าทั้ง Power BI และ Excel สามารถแชร์ข้อมูลผ่าน Cloud ได้ แต่ Excel ยังมีความสะดวกในการแชร์ไฟล์ให้ผู้ใช้แก้ไขร่วมกันได้ง่ายผ่าน OneDrive หรือ SharePoint โดยตรง ขณะที่ Power BI ต้องพึ่งพาการกำหนดสิทธิ์และการเผยแพร่ผ่าน Power BI Service
 
- เหมาะกับการทำงานทั่วไปในองค์กร – Excel เป็นเครื่องมือพื้นฐานที่ผู้ใช้ทั่วไปสามารถใช้งานได้โดยไม่ต้องมีการ Training มากนัก ขณะที่ Power BI ต้องมีความเข้าใจเกี่ยวกับ Data Modeling และ DAX ในระดับหนึ่งจึงจะใช้งานได้อย่างมีประสิทธิภาพ
 
++++++++++++++++++++++
 
ผมแนะนำตามนี้
 
อยากใช้ Power BI ให้ทำงานได้ตามใจ ต้องใช้สูตร DAX ครับ ซึ่งยากพอตัวทีเดียว ผู้ใช้ต้องเรียนรู้กันใหม่เพราะต่างจาก Excel อีกทั้งตัวสูตรก็ไม่ได้เปิดให้เห็นได้ง่ายๆเหมือนที่เห็นในเซลล์ได้โดยตรงแบบ Excel 
 
Copilot ตอบเพิ่มเติม
 
นั่นเป็นข้อแตกต่างสำคัญระหว่าง Power BI กับ Excel เลยครับ! Excel เปิดโอกาสให้เรามองเห็นและแก้ไขสูตรได้โดยตรงในเซลล์ ทำให้การตรวจสอบและปรับแต่งเป็นเรื่องง่าย ส่วน Power BI ใช้ DAX ในการจัดการข้อมูล ซึ่งแม้จะทรงพลังมาก แต่ก็ต้องใช้เวลาเรียนรู้ไม่น้อย เพราะแนวคิดมันต่างจากสูตรใน Excel โดยสิ้นเชิง 
 
ยิ่งถ้าต้องสร้าง Measures หรือ Calculated Columns ที่ซับซ้อน การ Debug สูตร DAX ก็ไม่ใช่เรื่องง่าย เพราะมันไม่ได้แสดงผลลัพธ์ให้เห็นทีละขั้นตอนแบบ Excel แต่ต้องพึ่ง Performance Analyzer หรือใช้ตัวแปรเพื่อแยกการคำนวณเป็นขั้นตอน
 

08 May 2025

มาชมให้เห็นกับตาว่า ทำไมสูตร PivoyBY ของ Excel 365 จึงเหนือกว่าการใช้ PivotTable


ในตัวอย่างนี้ แค่คลิกเปลี่ยนปีกับชื่อหัวตารางในเซลล์สีเขียวกับสีส้มด้านบนตาราง สูตร PivotBY จะสร้างรายงานตามรายเดือนให้ทันที เปลี่ยนตัวเลขให้เห็นกันจะจะในตารางเดิมตารางเดียว พร้อมกับนำไปแสดงเป็นกราฟให้เห็นเปรียบเทียบ

สูตรในเซลล์ M4
=PIVOTBY( MONTH(Date), INDIRECT(M2), Sales, SUM,,,,,, YEAR(Date)=K2 )

- MONTH(Date) ใช้สร้างหัวตารางเป็น Row Field ตามเลขเดือน
- INDIRECT(M2) ใช้สร้างหัวตารางเป็น Column Field ตามเรื่องที่ต้องการตามค่าในเซลล์สีส้ม
- Sales คือ Valuse ที่อยากให้หายอดรวมตามสูตร SUM
- YEAR(Date)=K2 เป็นสูตร Filter เพื่อหายอดเฉพาะเลขปีในเซลล์สีเขียว

พอสร้างสูตรนี้แล้ว Enter ลงไปในเซลล์ M4 จะพบว่า Excel กระจายตัวเลขคำตอบเป็นตารางสรุปยอดให้ทันที

🥰 เทียบ PivotBY กับ PivotTable
1. ไม่ต้องเสียเวลาไปสั่ง Refresh
2. ไม่ต้องสร้างหลายตารางหรือตามคนอื่นมาปรับแก้ให้
3. ไม่ต้องเสียเวลาไปสั่ง Filter หรือ Slicer แค่คลิกในเซลล์ที่ใช้ Data Validation แบบ List แทน

เนื่องจากตารางที่ PivotBY หาคำตอบมาให้ตามรายการที่มี จะไม่แสดงยอดครบทุกเดือน ดังนั้นก่อนจะนำไปสร้างเป็นกราฟที่แสดงครบทั้ง 12 เดือน จึงต้องสร้างตารางฐานข้อมูลสำหรับนำไปสร้างกราฟ โดยใช้สูตรในเซลล์ N26

=IFERROR( INDEX( M4#, MATCH( M26:M37, CHOOSECOLS(M4#,1),), N24#), 0 )

- IFERROR(สูตร, 0) เพื่อปรับค่าเดือนที่หาไม่พบให้เป็น 0
- M4# เป็นพื้นที่ตาราง Dynamic Array ที่ได้มาจากสูตร PivotBY
- MATCH( M26:M37, CHOOSECOLS(M4#,1),) หาเลขที่ Row ตามเลขเดือน
- N24# เป็นเลข Column ของหัวตาราง PivotBY ที่ต้องการ

Download ตัวอย่างได้จาก
https://drive.google.com/file/d/1nAicW6mCU8KXYnsBWZpuEwmtDPE662kj/view?usp=sharing




 

07 May 2025

Dynamic Dashboard ต้องมาพร้อมกับ Dynamic Chart รูปเดียวแต่แสดงภาพเรื่องอะไรก็ได้

ในการนำเสนอผลงานต้องทำให้สามารถแสดงรายงานพร้อมภาพกราฟ "รูปเดียว" แต่เปลี่ยนให้แสดงรายละเอียดเรื่องอะไรก็ได้


ในตัวอย่างนี้แค่คลิกลงไปในเซลล์สีส้ม K21 ตัวเลขและกราฟด้านขวามือจะเปลี่ยนไปแสดงตามเรื่องที่ต้องการให้ทันที ช่วยทำให้ไม่ต้องเลื่อนหน้าจอไปที่อื่น

พระเอกที่ช่วยทำงานแบบนี้ได้มาจากการนำสูตร Choose มาซ้อนลงไปในสูตร VLookup ที่สร้างไว้ในเซลล์ K22

=IFERROR( VLOOKUP( J22:J33,
CHOOSE( KeyNum,J5#,M5#,P5#,S5#,V5#),
2, 0), NA())

☝️ เดิมนั้นสูตร VLookupที่ค้นหาแบบ Exact Match มีโครงสร้างตามนี้
=VLookup( ค่าที่ใช้หา, พื้นที่ตารางที่เก็บค่า, เลขที่Column คำตอบ , 0)

ค่าที่ใช้หา J22:J33 ใช้หาเลขเดือนทั้ง 12 เดือนพร้อมกัน

พื้นที่ตาราง ให้สูตร Choose ทำหน้าที่หาพื้นที่มาใช้ตามลำดับ
👉 CHOOSE( KeyNum,J5#,M5#,P5#,S5#,V5#)
โดย KeyNum มาจากเซลล์ด้านขวาบนสุดของตาราง เป็นสูตร Match หาเลขที่ตารางมาใช้

กำหนดให้ใช้พื้นที่ตารางเรียงลำดับตามเซลล์หัวมุม J5#,M5#,P5#,S5#,V5# ซึ่งได้มาจากสูตร GroupBY ที่หาค่ามาให้แบบ Dynamic Array ดังนั้นจึงใช้เครื่องหมาย # แทนพื้นที่ตารางทั้งหมด

ถ้า KeyNum =1 จะใช้ตารางที่มาจาก J5#
ถ้า KeyNum =2 จะใช้ตารางที่มาจาก M5#
ถ้า KeyNum =3 จะใช้ตารางที่มาจาก P5#
ถ้า KeyNum =4 จะใช้ตารางที่มาจาก S5#
ถ้า KeyNum =5 จะใช้ตารางที่มาจาก V5#

Download Dynamic Chart ได้จาก
https://drive.google.com/file/d/1tiLD10kRpevmek8V3o_ut7Oudrf2hKTU/view?usp=sharing

 

++++++++++++++++++++++++ 

ถ้าใช้ Excel version อื่นก่อน 365 จะใช้สูตร VLookup ผสมกับ Choose ได้เช่นกัน โดยเลือกพื้นที่ตาราง มาใส่ลงไปใน Choose ตามนี้ (สมมติมี 3 ตาราง)
 
=VLookup( ค่าที่ใช้หา,
Choose( เลขที่ตาราง, พื้นที่ตารางที่1, พื้นที่ตารางที่2, พื้นที่ตารางที่3),
เลขที่ Column คำตอบที่ต้องการ, 0)
 
ชมคลิปและแฟ้มตัวอย่างได้จาก

 

06 May 2025

สูตรที่ขาดไม่ได้ในการสร้าง Dashboard ใน Excel 365 ให้ใช้สูตร GroupBy ที่มี Filter ในตัว


แทนที่จะต้องเสียเวลาไป Filter เพื่อกรองให้เหลือรายการที่ต้องการเท่านั้นก่อน ให้ใช้สูตร GroupBy กำหนดเงื่อนไขการกรองไว้ในตัวสูตร

ตัวอย่างนี้อยากได้รายงานเรื่องอะไรของปีไหนให้คลิกเลือกในเซลล์สีเขียวด้านบนใน Row 2 :
K2 เลือกปี
N2 เลือกเขต
Q2 เลือกชื่อสินค้า
T2 เลือก Outlet
W2 เลือกชื่อพนักงานขาย 

J5 =GROUPBY( MONTH(Date), Sales, SUM,0,0,,YEAR(Date)=K2)

YEAR(Date)=K2 เป็นการสั่งให้สูตร GroupBy จัดการหายอดเฉพาะในปี 2016 หรือปีใดก็ได้ตามที่เลือกไว้ในเซลล์ K2

ถ้าอยากจะกรองทั้งปีด้วยหรือเงื่อนไขอื่นด้วย ให้นำเงื่อนไขอื่นคูณต่อเข้าไป
M5 =GROUPBY( MONTH(Date), Sales, SUM,0,0,,
(YEAR(Date)=K2)*(Region=N2))

P5 =GROUPBY( MONTH(Date), Sales, SUM,0,0,,
(YEAR(Date)=K2)*(Product=Q2))

S5 =GROUPBY( MONTH(Date), Sales, SUM,0,0,,
(YEAR(Date)=K2)*(Outlet=T2))

V5 =GROUPBY( MONTH(Date), Sales, SUM,0,0,,
(YEAR(Date)=K2)*(Sales_Person=W2))

พอได้ตารางสรุปยอดที่ต้องการแล้วก็นำไปสร้างกราฟต่อ โดยใช้สูตร VLookup หายอดรายเดือน

K22 =IFERROR( VLOOKUP(J22:J33,J5#,2,0), NA() )

เดือนไหนไม่มียอดขายให้แสดง NA แทนเพื่อทำให้กราหไม่แสดงเดือนนั้น

Download ได้จาก
https://drive.google.com/file/d/1nlJvvP7sWyyRmIaQYNkPLxk-HEFLyl4_/view?usp=sharing

05 May 2025

PivotTable Baby Steps เริ่มต้นจากวิเคราะห์ขนาดก่อนนะจ้ะ

 

PivotTable สร้างง่าย แค่ไม่กี่คลิกก็สร้างรายงานออกมาให้ได้แล้ว แต่พอจะใช้งานนี่แหละ ต้องสร้างตารางให้สามารถใช้สายตามองหาข้อมูลที่ต้องการได้ง่ายด้วย ... จะเรียงลำดับเรื่องราวยังไง

ขอยกตัวอย่างที่ใกล้ตัวพวกเรามากที่สุด จะหาว่าบ้านอยู่ที่จังหวัดไหน เขตอะไร แสดงให้ละเอียดถึงแขวง รหัสปณด้วย จะสร้าง PivotTable ให้เรียงตามอะไรก่อนหลัง จึงจะได้ขนาดตารางที่เล็กที่สุด ซึ่งจะช่วยทำให้สามารถมองหาข้อมูลได้ง่ายที่สุดด้วย

👉 ให้ทดลองลากหัวข้อมาใส่ไว้ในช่อง Row Field หาว่าจะเอาหัวข้ออะไรมาก่อนมาหลังแล้วมองลงไปหาขอบด้านล่างของตารางว่า เรียงแบบไหนได้ขนาดตารางสั้นที่สุด


จากตัวอย่างนี้พบว่าเรียงลำดับตามนี้สั้นดี
จังหวัด
รหัสปณ
เขต
แขวง

พอสลับกันแบบนี้จะยาวขึ้นมาหน่อย
รหัสปณ
จังหวัด
เขต
แขวง

ถ้าเอาแขวงขึ้นมาเรียงไว้ก่อนจะขนาดตารางจะยาวมากที่สุด

นอกจากให้มองที่ขนาดแล้ว จะเห็นความสัมพันธ์ของข้อมูลด้วยว่าเรื่องอะไรเกี่ยวข้องกันบ้าง ช่วยทำให้สามารถตัดลดหัวเรื่องที่ไม่จำเป็นต้องมาแสดง

Download ตัวอย่างมาดูความยาวของขนาดตารางได้จาก
https://drive.google.com/file/d/1cdOyAF5j8gpKgbLP5lu-UKZbkY3N_e9G/view?usp=sharing

04 May 2025

วิธีกรอกเขตแขวงในกทม โดยใช้สูตรใน Excel 365

 

พอกรอกรหัสไปรษณีย์ในช่องสีส้ม จะแสดงชื่อจังหวัด จากนั้น
ช่องชื่อเขตพื้นสีม่วง จะแสดงรายชื่อเขตออกมาให้เลือก จากนั้น
ช่องชื่อแขวงพื้นสีฟ้า จะแสดงรายชื่อแขวงของเขตนั้นออกมาให้เลือก


เช่น ในการหารายชื่อแขวง ใช้สูตร

=SORT( UNIQUE( FILTER( Subdistrict, District=M3 ) ) )

FILTER( Subdistrict, District=M3 ) ช่วยกรองหารายชื่อแขวง โดยมีเงื่อนไขว่าต้องอยู่ในเขตที่คลิกเลือกไว้ในเซลล์ M3

จากนั้นใช้ Unique เพื่อตัดรายชื่อแขวงที่ซ้ำแล้วจัดเรียงโดยใช้ Sort

Download แฟ้มตัวอย่าง
https://drive.google.com/file/d/1U7MRo_dH5MdqpC2rbVrgVbUZ43VC_aWF/view?usp=sharing


02 May 2025

ฉลาดสร้าง Excel 365 Dashboards แนวใหม่ จะใช้สูตร Filter ก่อน GroupBy หรือ GroupBy ก่อน Filter ดีกว่ากัน



แฟ้มทำงานช้าเป็นเรื่องที่บ่นกันมากที่สุด สาเหตุที่ช้าก็เพราะจำนวนรายการเพิ่มขึ้นไปเรื่อยๆ แล้วสูตรที่ใช้ก็เอาข้อมูลทั้งหมดตั้งแต่รายการแรกจนถึงรายการสุดท้ายมาใช้เสียอีก ทั้งๆที่ต้องการนำรายการแค่บางช่วงเท่านั้นมาสร้างรายงาน

แต่ก่อนโน้นต้องเสียเวลาไปสร้างสูตร Offset เพื่อเลือกดึงเฉพาะช่วงรายการมาใช้ พอถึงยุคที่ใช้ Excel 365 มีสูตรใหม่ๆให้ใช้ทำงาน โดยเฉพาะอย่างยิ่งให้ใช้แทน PivotTable แถมไม่ต้องแตะ VBA อีกต่อไป

ตัวอย่างนี้มีฐานข้อมูลที่เก็บไว้หลายปี นับวันยิ่งมีจำนวนรายการเพิ่มขึ้นไปเรื่อยๆ

ภาพบน ใช้สูตร Filter ช่วยกรองข้อมูลให้ลดเหลือแค่รายการของปี 2019 เท่านั้นก่อน พอลดจำนวนรายการเหลือเฉพาะปีเดียวแล้วจึงใช้สูตร GroupBY หายอดขายแต่ละเดือน

หรือ จะเลือกใช้อีกแบบ

ภาพล่าง ใช้สูตร GroupBy เพื่อสรุปยอดขายแต่ละเดือนของทุกปีขึ้นมาก่อนแล้วจึงใช้สูตร Filter กรองให้เหลือแค่ปี 2019 ปีเดียว

😵‍💫 คิดว่าจะใช้สูตร Filter ก่อน GroupBy หรือ GroupBy ก่อน Filter ดีกว่ากันครับ

Download ตัวอย่างได้จาก
https://drive.google.com/file/d/1EJsoNdAQJKaGo9Oqm7M4GNMUjFZl6TRu/view?usp=sharing

ตัวอย่างนี้ผมหาทางใช้ Dynamic Array ร่วมกับการใช้ Table ช่วยให้สูตรทำงานรองรับกับจำนวนรายการที่เพิ่มขึ้นในอนาคต จะได้เลิกใช้สูตรที่อ้างอิงทั้ง column B:B แบบนี้กันเสียที และทำให้กราฟที่จะนำไปแสดงเป็น Dashboards กลายเป็น Dynamic Chart ตามไปให้เอง

ลองคลิกเปลี่ยนเลขปีในเซลล์ Q2 ที่ใส่พื้นสีเขียวไว้จะพบว่ากราฟปรับตามให้ทันที

+++++++++++++++++++++++++++++++++++++++++++++

ถ้าเลือกใช้สูตร Filter ก่อน GroupBy น่าจะเหมาะกว่าครับ เพราะแม้ตัวฐานข้อมูลเหลือเฉพาะรายการในปีที่ต้องการ แต่ยังมีข้อมูลเรื่องอื่นสามารถนำไปใช้ต่อได้อีก

แต่ถ้าเลือกใช้ GroupBy ก่อน จะทำลายฐานข้อมูลให้เหลือแค่ยอดขายในแต่ละปีเท่านั้น ทำให้หมดโอกาสนำไปใช้หาเรื่องอื่น

ไม่ใช่แค่สำหรับการทำ Dashboard เท่านั้น แนะนำให้ใช้สูตร Filter ก่อนที่จะนำข้อมูลไปใช้ต่อเสมอครับ จะช่วยให้ PivotTable หรือสูตรใดๆทำงานเร็วขึ้น

การอ้างอิงพื้นที่จากตารางที่ได้จากสูตร Filter จะเป็น Dynamic Array ในตัว ให้ใช้สูตร =Cell# ซึ่งเป็นเซลล์หัวมุมซ้ายสุดเซลล์เดียว เมื่อจะแตกออกมาเป็นแต่ละ Column ให้ใช้สูตร ChooseCols ช่วย

กรณีใช้สูตร Filter ก่อน GroupBy

I3 =FILTER( SalesTBL, YEAR(Date)=Q2 )

SalesTBL เป็นพื้นที่รายการในตารางฐานข้อมูลทั้งหมด
YEAR(Date)=Q2 เป็นเงื่อนไขหาตำแหน่งรายการที่มีปีเท่ากับเลขปีในเซลล์ Q1

P5 =GROUPBY( MONTH( CHOOSECOLS(I3#,6) ), CHOOSECOLS(I3#,5), SUM,0,0)

CHOOSECOLS(I3#,6) เลือก column ที่ 6 ที่เป็นวันเดือนปีออกมาใช้จัดกลุ่มโดยหาเลขเดือนต่อด้วยสูตร Month
CHOOSECOLS(I3#,5) เลือก column ที่ 5 ที่เป็นยอดขายมาใช้หายอดขายรวม

กรณีใช้ GroupBy ก่อน Filter
.
I3 =GROUPBY( HSTACK( YEAR(Date), MONTH(Date) ), Sales, SUM )
HSTACK( YEAR(Date), MONTH(Date) ) กำหนดเงื่อนไขให้จัดกลุ่มตามรายปีกับรายเดือน
.
P5 =FILTER( I3#, CHOOSECOLS(I3#,1)=Q2 )
จัดการกรองตารางที่มีพื้นที่เริ่มจากเซลล์ I3 โดยใช้เงื่อนไขเทียบเลขปีจาก Column 1 ว่าตรงกับเลขปีที่ต้องการในเซลล์ Q2 

01 May 2025

ทำไมฉลาดใช้ Excel ต้องมาคู่กับเฉลียวด้วย

 


ช่วยกันดูตารางสรุปหายอดขายรายเดือนในภาพด้านขวาด้วยครับ อย่าเพิ่งไปสนใจที่สูตรว่าผิดไหม
สูตรที่ใช้ตอนนี้ถูกต้อง 100%
 
=GROUPBY( MONTH(Date), Sales, SUM )
 
สังเกตตัวเลขยอดขายเดือน 1-2 ทำไมถึงสูงกว่าเดือนอื่น เห็นตัวเลขแบบนี้ต้องสงสัยแล้วล่ะครับ

สาเหตุมาจากตารางข้อมูลด้านซ้ายที่มักไม่มีใครสนใจไปตรวจสอบหรอกว่ามีรายการอะไรบ้าง ไม่ได้มีแค่ปีเดียว ดังนั้นสูตรหายอดรวมรายเดือนจึงรวมยอดรายเดือนของทุกปีไว้ด้วยกัน

ทางที่ปลอดภัย ไม่ว่าจะใช้ PivotTable หรือสูตรอะไรสร้างรายงานขึ้นมา ควรแสดงปีกำกับไว้ด้วยเสมอ ถ้าใช้ 365 ให้ใช้สูตรตามภาพนี้
 
=GROUPBY( HSTACK( YEAR(Date), MONTH(Date) ), Sales, SUM )
 
 
สงสัยต่อไปอีกนิด ทำไมเลขปีที่เห็นนี้จึงแสดงไว้แค่รายการเดียว ไม่เห็นเลขปีที่ของจริงมีกำกับไว้ทุกรายการ ลองเอาแฟ้มไปแกะกันดูครับว่าทำได้ยังไงหนอ 

Download ตัวอย่างได้จาก
https://drive.google.com/file/d/1KHjTkksr3iP9GdJRogaH9_ZysLaewwLT/view?usp=sharing