17 October 2025

ย้ายงานจะอยู่กันยืดหรือไม่ Compat กันไหม อย่าลืมถามคำถามนี้

ไม่ใช่ถามว่าใช้ Power Query กับ Power BI เป็นหรือเปล่าหรอกครับ ปัญหาที่ว่ามาเก่าไปแล้วล่ะครับ ตอนนี้ต้องถามเพิ่มอีกอย่างว่า
.
>>> ใช้ Excel 365 หรือเปล่า ?
.
ลูกศิษย์ที่มาเรียนแบบตัวต่อตัวกับผมส่วนใหญ่เพิ่งย้ายงานหรือเปลี่ยนงานใหม่ พอได้แฟ้มเก่าที่ใช้กันเป็นมรดกตกทอด มาเปิดดูเท่านั้นแหละหงายหลัง ไม่รู้ว่าจะเริ่มตรงไหน จะไปต่อยังไง สุดท้ายก็ถอนตัวลาออกไปทำที่ใหม่

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

ในการหาคนเข้าทำงานนั้น ที่หาคนได้ยากที่สุด คือ หาคนเก่งที่รู้จักวิธีการสร้างงานแบบเดิมๆ เพื่อให้ Compatible สามารถทำงานร่วมกัน


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

ถ้าใช้ Excel รุ่นเก่าแบบโบราณ ต้องสร้างสูตรที่เรียกว่า Multiple Match ผสมสูตร Index + Small + IF + IsError มาซ้อนกัน ตามพื้นที่ตรงกลางในภาพ ต้องใช้เวลาเรียนอย่างน้อยครึ่งชั่วโมง แถมอาจนำไปใช้จริงไม่ได้ด้วยเพราะต้องพึ่ง column Num ใช้ใส่เลขลำดับรายการเรียง 1, 2, 3 ลงไปเรื่อยๆ

{=SMALL(IF(Id=G3,Num),Num)} เพื่อใช้หาเลขลำดับรายการ

=IF(ISERROR($K3),"No more",INDEX(Name,$K3)) หารายละเอียดของรายการตามเลขนั้น

ถ้าไม่อยากให้มี column Num ต้องซ้อนสูตร Row + Indirect เข้าไปอีก

ส่วนใน Excel 365 ใช้สูตร =FILTER(B3:E17,Id=G3) แค่นี้เอง 

Download ตัวอย่างมาเทียบกัน

https://drive.google.com/file/d/1SJ0AtAQw-s7GkqnCJQ8ONXw-H-M41-A2/view?usp=sharing 

อย่าว่าแต่ในการย้ายงานหรือสมัครงานเลยครับ ในการเรียนการสอนหรือช่วยแก้ปัญหา Excel ต้องถามว่าใช้ Excel 365 หรือรุ่นอะไร 


15 October 2025

Automatic แบบไม่ต้องเสียเวลาไปใช้ VBA, PivotTable หรือ Power Query

Automatic แบบไม่ต้องเสียเวลาไปใช้ VBA หรือ Power Query 

ทันที คือ องค์ประกอบสำคัญที่ไมโครซอฟท์เตรียมไว้ให้พวกเรานำไปใช้กันใน Excel 365 ต่างจาก Excel รุ่นก่อนที่ต้องอาศัย VBA ช่วยในการสั่งให้ Excel ทำอะไรๆซ้ำให้ โดยเฉพาะการสร้างงานที่ผ่านการใช้คำสั่งบนเมนู

อะไรบ้างล่ะที่แต่เดิมไม่ยอมทำซ้ำใหม่ให้ VS อะไรล่ะที่ทำงานให้ใหม่ทันที

- อยากจัดเรียงข้อมูลใหม่ เดิมต้องคลิกสั่ง Data > Sort ตอนนี้ใช้สูตร Sort 

- อยากค้นหาชื่อรายการที่ไม่ซ้ำ เดิมใช้ Data > Advanced ตอนนี้ใช้สูตร Unique

- อยากกรองหารายการที่ต้องการ เดิมใช้ Data > Filter ตอนนี้ใช้สูตร Filter

- อยากสรุปหายอดรวมตามกลุ่ม เดิมใช้ Insert > PivotTable ตอนนี้ใช้สูตร PivotBY หรือ GroupBY

- อยากเอาตารางจากหลายชีทมาต่อกัน เดิมใช้ VBA หรือ Power Query ตอนนี้ใช้สูตร VStack

- อยากสร้างสูตรใหม่ขึ้นมาใช้แทนสูตรยาวๆ เดิมใช้ Function VBA ตอนนี้ใช้สูตร Let, Lambda 

- อยากทำให้สูตรปรับขนาดตามรายการที่เพิ่มใหม่ เดิมใช้ Insert > Table ตอนนี้สูตรใหม่ขยายตัวให้เอง

- อยากทำให้คลิกแล้วมีปุ่มแสดงรายการ เดิมใช้ Data > Validation แบบ List ตอนนี้คำสั่งนี้ปรับปรุงใหม่ให้สามารถแสดงเฉพาะรายการที่ไม่ซ้ำและช่วยค้นหารายการที่ต้องการให้เองเมื่อพิมพ์แค่ตัวอักษรตัวแรกๆ 

- อยาก Cleaning ข้อมูล แต่เดิมต้องใช้ Power Query ตอนนี้มีสูตรใหม่เพิ่มขึ้นอีกเยอะมาก เช่น TEXTSPLIT, TEXTBEFORE, TEXTAFTER, TRIMRANGE

ผมสรุปไว้ที่ https://excelexpertlibrary.blogspot.com/2025/10/power-query-2013-12.html

พอนำของใหม่ๆเหล่านี้มาใช้งานร่วมกันกับ Conditional Formatting จะช่วยทำให้สามารถสร้างแบบฟอร์มให้กรอกค่าที่ช่วยตรวจสอบค่าที่กรอกและเปลี่ยนสีให้ด้วย ซึ่งแต่เดิมต้องใช้ User Form ใน VBA

ที่เหนือกว่านั้นในการสั่งให้ Excel คำนวณใหม่ให้ทันที สามารถเปลี่ยนระบบการคำนวณไปเป็นแบบ Manual ได้ด้วย เพื่อช่วยให้ไม่เสียเวลาคำนวณทุกครั้งที่ปรับเปลี่ยนค่าใหม่ แค่จัดการเปลี่ยนเสร็จให้เรียบร้อยก่อนทั้งหมดแล้วกดปุ่ม F9 ก็จะคำนวณให้ใหม่ครั้งเดียว ... ทันที

ท้ายสุดที่ยังมองไม่ออกว่าจะมีที่สิ้นสุดตรงไหน คือ Copilot ครับ อยากได้อะไรแค่สั่งผู้ช่วยทำให้แทน


13 October 2025

เคล็ดการสร้างสูตร IF ซ้อน IF "ต้องเปิดโอกาสให้ IF ทุกตัวได้ทำงาน


จากภาพนี้โจทย์กำหนดให้หาว่า MyPoint ที่สอบได้ 75 คะแนน ได้เกรดอะไร ซึ่งตอบว่าได้เกรด B

โดยมีเงื่อนไขในการตัดเกรด ตามตาราง GradeTbl ซ้ายมือ
ถ้าสอบได้ตั้งแต่ 0 คะแนนขึ้นไป ได้เกรด C
ถ้าสอบได้ตั้งแต่ 70 คะแนนขึ้นไป ได้เกรด B
ถ้าสอบได้ตั้งแต่ 90 คะแนนขึ้นไป ได้เกรด A

สูตร IF ที่ใช้ในการตัดเกรด อยู่ในเซลล์สีเขียว โดย MyPoint เป็นคะแนนที่สอบได้ 75 คะแนน
=IF( MyPoint>=B7, C7, IF( MyPoint>=B6, C6, C5))

ถ้าแกะค่าดูว่า B6 B7 C5 C6 C7 คือค่าอะไร
=IF( MyPoint>=90, "A", IF( MyPoint>=70, "B", "C"))

มองลำดับสูตรจากซ้ายไปขวา ทำไมสูตร IF ที่ซ้อนกันนี้ จึงเทียบ MyPoint>=90 ขึ้นมาก่อนแล้วจึงตามด้วย MyPoint>=70

และที่สำคัญ ทำไมจึงไม่เทียบ MyPoint>=0 ขึ้นก่อนสุดล่ะ

สาเหตุก็เพราะ "ต้องเปิดโอกาสให้ IF ทุกตัวได้ทำงาน" ครับ

ถ้าเอา >=0 ขึ้นก่อน จะปิดโอกาสไม่ให้เงื่อนไขอื่นทำงานได้เลย เพราะค่าที่มากกว่าหรือเท่ากับ 0 นั้น หมายถึงทั้ง 70 และ 90 ด้วย

เพื่อเปิดโอกาสให้ IF ทุกตัวได้ทำงาน จึงต้องไล่สูตร IF ให้ตรวจสอบเงื่อนไขตามลำดับนี้

MyPoint>=90 ได้เกรด A แต่ถ้าไม่ใช่จึงเทียบ MyPoint>=70 ได้เกรด B แต่ถ้าไม่ใช่อีกจึงให้ C ไปเป็นทางออกสุดท้าย โดยไม่จำเป็นต้องซ้อน IF เพิ่มอีกตัวเข้าไปอีก

☝️ "ต้องเปิดโอกาสให้ IF ทุกตัวได้ทำงาน"

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

=IF( AND(MyPoint>=B5, MyPoint<B6), C5, IF( AND(MyPoint>=B6, MyPoint<B7), C6, C7))

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

ถ้ารู้จักสูตร VLookup สูตรจะสั้นลงเหลือเพียง
=VLOOKUP( MyPoint, GradeTBL, 2)

แต่จะใช้ได้ต่อเมื่อโครงสร้างตาราง GradeTBL นั้นเรียงคะแนนจากน้อยไปมากและข้อมูลคะแนนกับเกรดอยู่ในพื้นที่ติดกันเท่านั้น

ส่วนสูตร IF ไม่ต้องห่วงว่าค่าจะกรอกเอาไว้ที่ไหน ยังทำงานได้ตามเดิมเสมอ

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

อยากชมคลิปที่ผมอธิบายเรื่องนี้ เชิญดูได้จากหลักสูตร Excel Expert Fast and Easy
https://xlsiam.com/course/excel-expert-fast-and-easy/

ซึ่งเปิดให้สมัครเรียนออนไลน์ ฟรี ที่เว็บ XLSiam.com ครับ 

08 October 2025

เชิญชม Dashboards ฝีมือของผม แจกฟรี โปรแกรม 4ZSuriya



ไม่ต้องสนใจดูดวงก็ได้ ขอให้หลักไว้สร้างสำหรับงานของคุณเอง

1. พอเปิดแฟ้มขึ้นมาให้ Enable Macro จะปรับพื้นที่ให้เห็นเต็มจอ ไม่ว่าจะใช้จอเล็กใหญ่ขนาดไหน

2. ทุกช่องที่เห็นพื้นสีขาวแล้วตัวอักษรสีม่วง เป็นช่องที่เตรียมไว้กรอกตัวแปรค่าใหม่ลงไป เซลล์อื่นป้องกันไว้ไม่ให้กรอกอะไรได้เลย

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




 

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

💥💥💥
5. ที่สุดๆของแฟ้มนี้ คือ มีระบบ AI อธิบายความหมายของภาพว่า ทั้งหมดนี้แปลว่าอะไร

 

แฟ้มนี้เปิดให้สมัครเรียนในเว็บ XLSiam.com เปิดให้เรียน ฟรี แถมถ้าอยากแกะดูว่าผมทำอะไรไว้ให้ใช้รหัส forall

ส่วนไหนที่สงสัย ถามมาได้ในเพจ Excel Expert Training โพสต์เรื่องนี้ หรือ Inbox มาก็ได้ครับ

ขอแนะนำเพจคนรัก Excel ชอบดูดวง https://www.facebook.com/groups/4ZSuriya/ 

เชิญ Download แฟ้มและเข้าเรียนได้จาก
https://xlsiam.com/course/easy-thai-astrology-with-excel-expert/

ปล แฟ้มตัวอย่างที่แจกให้ทดลองว่าไปแล้วก็คือแฟ้มโปรแกรมของจริงแหละครับ

ลิงก์แฟ้มโปรแกรมรุ่น 1.05
https://drive.google.com/file/d/1aM7EM3jp8vKBI8nWMzjj7HSANSRykP85/view?usp=sharing

ถ้าอ่านภาษาไทยบางส่วนไม่ออกให้ใช้ 1.06
https://drive.google.com/file/d/1eu1ovlzLtKsNNtOMHSeDtxuY5oVjPX0U/view?usp=sharing

ลิงก์คู่มือ
https://drive.google.com/file/d/1wmAnNp4z6ISqqvhp29pcvSvVTfH_n0It/view?usp=sharing

https://drive.google.com/file/d/16qjojo7WdaZSlRx1O8oDNWxZ2Fg7Tyon/view?usp=sharing

ภาพลับสุดยอดไว้แกะกับเปิดระบบ AI ให้ทำงาน
https://drive.google.com/file/d/1q12sqM3kj3Hxl0w2zSPZxwMcxRMYy3IY/view?usp=sharing

https://drive.google.com/file/d/1oHoyR6N5NOh475jWom8E-gjLSIRFSDQH/view?usp=sharing

07 October 2025

วิธีใช้ฐานข้อมูลแบบ Dynamic Database - ตอนที่ 3 วิธีดึงข้อมูลเฉพาะรายการที่เก็บไว้ใหม่ล่าสุดขึ้นมาใช้เท่านั้น



☝️ ต้องการดึงข้อมูลจากวันที่ 26/12/2025 ลงไปจนถึงวันที่ใหม่ล่าสุดที่เก็บไว้ จะทำอย่างไร

 

ข้อมูลทั้งหมดมีกี่รายการ
ใช้สูตร =ROWS(OrderDate)
=389 รายการ

หารายการแรกเป็นวันที่ใด
ใช้สูตร =MIN(OrderDate)
=3/1/2025 (สูตรนี่ไม่ได้ใช้ในการดึงข้อมูล เพียวแค่ใช้แจ้งให้ทราบ)

หารายการใหม่ล่าสุดเป็นวันที่ใด
ใช้สูตร =MAX(OrderDate)
=3/1/2026

👉 เซลล์ L8 กรอกวันที่ 26/12/2025 ที่ต้องการเริ่มใช้ข้อมูล

เริ่มจากรายการที่
=MATCH(L8, OrderDate, 0)
=378

💥 สูตรหาจำนวนรายการที่ต้องการ
=จำนวนรายการทั้งหมด - เริ่มจากรายการที่ +1
=389 - 378 +1
=12

ใช้สูตรดึงข้อมูล 12 รายการจากด้านล่างสุดของฐานข้อมูล MyData
=Take( MyData, -12)

หรือใช้ IF ช่วยเลือกว่าจะหาจากบนหรือล่าง
=TAKE( MyData,
IF(จากบนหรือล่าง="บน",1,-1)*จำนวนรายการที่ต้องการ )

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

06 October 2025

วิธีใช้ฐานข้อมูลแบบ Dynamic Database - ตอนที่ 2 สูตร Take ดึงรายการข้อมูลจากด้านบนหรือล่าง จากด้านซ้ายหรือขวา

ใน Excel 365 มีสูตร Take ช่วยแยกพื้นที่ของตารางตามจำนวน Row / Column ที่ต้องการมาให้ อยากได้จากด้านล่างขึ้นมาหรือจากด้านขวาเข้ามา แค่ใส่เลขลบแทนลงไป

โครงสร้างสูตร
=Take( พื้นที่ตารางทั้งหมด, จำนวนรายการ, จำนวนแนวตั้ง )

=Take( MyData, 37 ) จะได้พื้นที่ 37 รายการจากด้านบนลงไป
=Take( MyData, -37 ) จะได้พื้นที่ 37 รายการจากด้านล่างขึ้นมา เหมาะมากสำหรับการเลือกดึงเฉพาะรายการใหม่ล่าสุดขึ้นมาใช้งาน

 

ใช้สูตร IF ช่วยปรับจำนวนรายการที่ต้องการให้เป็นบวกหรือลบตามนี้

=TAKE( MyData,
IF(จากบนหรือล่าง="บน",1,-1)*จำนวนรายการที่ต้องการ )

ถ้าต้องการดึงข้อมูลตามแนวตั้งจากซ้ายไปขวา หรือจากขวาไปซ้าย สูตรยาวขึ้นหน่อยตามนี้

=TAKE( MyData,
IF(บนหรือล่าง="บน",1,-1)*จำนวนrow,
IF(ซ้ายหรือขวา="ซ้าย",1,-1)*จำนวนcolumn )

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

Power Query เปิดตัวปี 2013 12 ปีที่ผ่านมามีสูตรใหม่อะไรบ้างที่ใช้ได้ง่ายกว่า

Game changing ที่ Copilot จัดมาให้

เดือนและปีที่สูตรแต่ละตัวเปิดตัวใน Excel 365/2021 เพื่อให้เห็นภาพชัดเจนว่า “สูตรใหม่มาเมื่อไหร่ และมาเพื่ออะไร”

---

📌 สูตรใหม่ใน Excel ที่ใช้แทน Power Query ได้บางส่วน พร้อมเดือนปีเปิดตัว

หลายคนถามว่า “ในเมื่อ Excel มีสูตรใหม่อย่าง VSTACK, FILTER แล้ว ยังต้องใช้ Power Query อยู่ไหม?”

คำตอบคือ: สูตรใหม่ช่วยจัดข้อมูลใน worksheet ได้ดีมาก แต่ Power Query ยังจำเป็นสำหรับงานที่ต้องดึงข้อมูลจากหลายแหล่ง หรือแปลงข้อมูลแบบลึก

ลองดูไทม์ไลน์ของสูตรที่เปลี่ยนเกม:

🔹 FILTER / SORT / SORTBY / UNIQUE
📅 เปิดตัว: กันยายน 2018
→ เป็นชุด Dynamic Array รุ่นแรก ใช้กรอง เรียง และล้างข้อมูลซ้ำแบบยืดหยุ่น

🔹 LET / LAMBDA
📅 LET: พฤศจิกายน 2020
📅 LAMBDA: ธันวาคม 2020
→ สร้างสูตรซับซ้อนแบบ reusable และตั้งชื่อสูตรเองได้

🔹 TOCOL / TOROW / VSTACK / HSTACK / WRAPCOLS / WRAPROWS
📅 เปิดตัว: พฤศจิกายน 2022
→ ใช้รวมข้อมูลหลายช่วงแนวตั้ง/แนวนอน และแปลงข้อมูลเป็นรูปแบบใหม่

🔹 TEXTSPLIT / TEXTBEFORE / TEXTAFTER
📅 เปิดตัว: พฤศจิกายน 2022
→ ใช้แยกข้อความแบบละเอียด เหมาะกับงานจัดการข้อมูลที่เคยต้องใช้ Power Query

🔹 SCAN / REDUCE / MAP / BYROW / BYCOL / MAKEARRAY
📅 เปิดตัว: พฤศจิกายน 2022
→ ฟังก์ชันระดับสูงสำหรับการประมวลผลแบบสะสมและการจัดการข้อมูลเชิงโครงสร้าง

---

🧠
- ใช้ Power Query รวมข้อมูลจากหลายฝ่าย → ส่งเข้า named range
- ใช้สูตรใหม่จัดเรียงและแสดงผลแบบ dynamic โดยไม่ต้องพึ่ง Slicer
- สร้างระบบที่ “ฉลาด” และ “เบา” กว่า Power Query โดยใช้ LET + LAMBDA + VSTACK

---

> “Power Query คือรถบรรทุกที่ขนข้อมูลจากหลายที่
> สูตรใหม่ใน Excel คือรถเข็นที่จัดเรียงข้อมูลในร้านให้สวยงาม” 

สูตร TAKE เปิดตัวครั้งแรกใน Excel 365 เดือนพฤศจิกายน ปี 2022 โดยเป็นส่วนหนึ่งของชุดฟังก์ชันใหม่ที่มาพร้อมกับ Dynamic Arrays รุ่นขยาย เช่น:
- VSTACK, HSTACK – รวมข้อมูลแนวตั้ง/แนวนอน
- TOCOL, TOROW – แปลงข้อมูลเป็นแนวเดียว
- WRAPROWS, WRAPCOLS – จัดข้อมูลเป็นกลุ่ม
- DROP, TAKE – ตัดหรือดึงข้อมูลจากหัวหรือท้ายช่วง
---
🧠 TAKE ใช้ทำอะไร?
- ดึงข้อมูลจาก “บนสุด” หรือ “ล่างสุด” ของช่วงแบบ dynamic
- ใช้ค่าลบเพื่อดึงจากท้าย เช่น =TAKE(A2:A100, -5) → ดึง 5 รายการสุดท้าย
- ใช้คู่กับ SORTBY, FILTER, LET เพื่อสร้าง dashboard ที่ตอบสนองทันที
---
🎓
> “TAKE คือกรรไกรที่ตัดข้อมูลจากหัวหรือท้ายได้ทันที
> ไม่ต้องเขียนสูตรซับซ้อนหรือใช้ INDEX + SEQUENCE เหมือนสมัยก่อน
 
++++++++++++++++++++++++++++++++++++
 
ในช่วง 12 ปีที่ผ่านมา (2013–2025) Power Query ได้พัฒนาอย่างต่อเนื่องจาก Add-in ธรรมดา สู่เครื่องมือ ETL ระดับองค์กรที่เชื่อมโยงกับ Excel, Power BI, Microsoft Fabric และ AI Copilot โดยมีการปรับปรุงทั้งด้านความสามารถ การเชื่อมต่อ และการทำงานอัตโนมัติ.
---
🗓️ สรุปวิวัฒนาการ Power Query ปี 2013–2025
 
🔹 2013 – เปิดตัวใน Excel 2010/2013 (ชื่อเดิม: Data Explorer)
- เป็น Add-in สำหรับดึงและแปลงข้อมูลจากหลายแหล่ง
- ใช้ M language สำหรับการเขียน query
 
🔹 2016–2019 – รวมเข้า Excel และ Power BI อย่างเป็นทางการ
- กลายเป็นส่วนหนึ่งของ Excel Ribbon (Data → Get & Transform)
- เพิ่มความสามารถในการเชื่อมต่อกับ SharePoint, SQL, Web, Folder
 
🔹 2020–2022 – ปรับปรุง UI และเพิ่มฟีเจอร์อัตโนมัติ
- เพิ่มตัวเลือก Combine Files, Detect Data Type, Group by
- รองรับการ refresh อัตโนมัติและ query dependencies
 
🔹 2023–2024 – เชื่อมโยงกับ Microsoft Fabric และ AI
- Power Query กลายเป็นส่วนหนึ่งของ Fabric Dataflows
- เพิ่มการเชื่อมต่อกับ OneLake, Dataverse, และ cloud sources
 
🔹 2025 – รองรับแหล่งข้อมูลแบบ Authenticated และ AI Copilot
- เชื่อมต่อกับแหล่งข้อมูลที่ต้องการการยืนยันตัวตน เช่น BigQuery, Databricks, PostgreSQL
- ใช้ Copilot ช่วยเขียน query, สรุปข้อมูล, และแนะนำการแปลงข้อมูลแบบอัตโนมัติ
- รองรับการสร้าง narrative visual และการสื่อสารข้อมูลผ่าน Teams
---
 
🧠 จุดเปลี่ยนสำคัญที่ควรรู้
- จาก manual → สู่ automation: Power Query จำขั้นตอนการแปลงข้อมูลได้หมด
- จาก local → สู่ cloud: รองรับการทำงานร่วมกับ Power BI, Fabric, และ OneLake
- จาก low-code → สู่ no-code + AI: Copilot ช่วยเขียน query และแนะนำการแปลงข้อมูล
- จาก Excel-only → สู่ระบบข้อมูลระดับองค์กร: ใช้ร่วมกับ SQL Server, Databricks, และ Power Platform
---
 
> “Power Query คือพนักงานจัดข้อมูลที่เรียนรู้ทุกปี—จากคนทำงานมือถึงคนใช้ AI ช่วยคิดแทน
 


05 October 2025

วิธีใช้ฐานข้อมูลแบบ Dynamic Database - ตอนที่ 1 สูตร Offset สูตรยืดได้หดได้



ทุกวันนี้ข้อมูลมีจำนวนมากขึ้น ทำให้เวลาที่สูตร Excel ใช้ในการคำนวณจะช้าลงไปเรื่อยๆ แล้วเรามักโทษไปว่าสาเหตุมาจาก Excel แล้วต้องหันไปใช้ Power Query มาช่วย ทั้งๆที่ต้นเหตุที่แท้จริงมาจากวิธีการใช้ฐานข้อมูลต่างหาก ... เราไม่รู้จักใช้ Excel แบบประหยัด

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

แทนที่จะทำแบบที่ชอบใช้กัน ยังมีทางออกอีกหลายวิธีที่จะลดจำนวนรายการข้อมูลลงให้เหลือเท่าที่ต้องการใช้จริงๆ ซึ่งในตอนแรกนี้ ขอนำสูตร Offset ที่ใช้กันแต่ดั้งแต่เดิมมาเล่าให้ฟังก่อน จากนั้นจะทะยอยนำวิธีการอื่นที่เกิดขึ้นใหม่ใน Excel 365 มาให้เรียนรู้กัน


สูตร Offset เป็นสูตรที่มีความสามารถยืดได้หดได้ ตามโครงสร้างนี้

=Offset ( เซลล์แรกหัวมุมตารางข้อมูล, ตำแหน่ง Row ของรายการแรก, ตำแหน่ง Column ของรายการแรก, ขนาดจำนวน Rows ที่ต้องการ, ขนาดจำนวน Columns ที่ต้องการ)

ตามภาพตัวอย่างนี้ ใช้สูตรเลือกดึงข้อมูลเฉพาะช่วงที่ต้องการด้วยสูตร
=OFFSET( $B$4, เริ่มจากรายการที่, 0, จำนวนรายการที่ต้องการ, จำนวนฟิลด์ทั้งหมด )

$B$4 เป็นเซลล์แรกหัวมุมซ้ายสุดของตารางข้อมูล
เริ่มจากรายการที่ เท่าใดให้กำหนดเลขที่รายการลงไป
0 ใช้ตำแหน่ง Column เดียวกันกับเซลล์ B4
จำนวนรายการที่ต้องการ ตรงนี้แหละคือพระเอกของสูตรนี้ที่ช่วยลดจำนวนรายการลง
จำนวนฟิลด์ทั้งหมด โดยทั่วไปจะกำหนดขนาดคงที่ หาได้จากสูตร Columns

=OFFSET($B$4, 4, 0, 30, 7)
ทำหน้าที่ดึงรายการที่ 4 ตามแนวเดิม ออกมา 30 รายการ จากทั้ง 7 Columns

ถ้าใช้ Excel รุ่นเก่าที่ยังไม่รู้จัก Dynamic Array ต้องเลือกพื้นที่ให้มีขนาดใหญ่ๆเผื่อไว้ก่อนแล้วพอสร้างสูตร Offset ลงไปต้องกดปุ่ม Ctrl+Shift+Enter จะพบว่าสูตรกระจายค่าให้ ถ้าเนื้อที่ใหญ่เกินรายการที่ต้องการจะเห็น Error NA

ถ้าใช้ Excel 365/2021 ขึ้นไป สร้างสูตรนี้แค่เซลล์เดียวจะกระจายค่าออกมาให้เองแบบ Dynamic Array

นอกจากสูตร Offset นี้จะช่วยประหยัดจำนวนรายการที่ทำให้การคำนวณเร็วขึ้นแล้ว เมื่อต้องการนำสูตรไปใช้ในการอ้างอิงกับสูตรต่างๆ ควรนำสูตรไปตั้งเป็นชื่อ เช่น UsedDB (เรียกว่า Formula Name) พอจะนำพื้นที่ไปใช้ให้กดปุ่ม F3 เพื่อนำชื่อสูตรไปใช้ต่อ จะช่วยประหยัดเวลาในการสร้างและทำให้ลดข้อผิดพลาดในการอ้างอิงพื้นที่อีกด้วย


  

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

 

30 September 2025

ในการขายสินค้า คำถามอะไรบ้างที่ควรเตรียมไว้ เพื่อหาคำตอบจาก Dashboards

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

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

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

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

 

Copilot แนะนำครับ 

Organizing dashboard questions

I think I need to propose categories for the dashboard questions, like sales performance, inventory, customer behaviors, profitability, forecasts, and exceptions. For each of these, I could list examples: "Which product is selling the best or worst this month?" "What’s the total sales this week compared to last week?" Sounds like it'd be helpful to suggest dynamic selection/management by exception logic or maybe a Power BI template too. Offering design tips, techniques like FILTER and LET formulas, and ways to structure interfaces might also be useful.

คำถามที่ควรเตรียมไว้สำหรับ Dashboards การขายสินค้า

การออกแบบ dashboard แบบ “ถามก่อนโชว์” เริ่มต้นด้วยการระบุคำถามสำคัญให้ชัดเจน จากนั้นค่อยสร้างตัวกรอง (filters) หรือพารามิเตอร์ที่ผู้ใช้เลือกเพื่อตอบคำถามเหล่านั้น


🛒 หมวดยอดขายและประสิทธิภาพการขาย

  • สินค้าตัวไหนขายดีที่สุดและแย่ที่สุดในช่วงเวลาที่เลือก
  • ยอดขายรวม (วัน/สัปดาห์/เดือน) เทียบกับช่วงก่อนหน้าเป็นอย่างไร
  • ช่องทางขายใดทำยอดได้มากที่สุด (ออนไลน์ vs ออฟไลน์ vs ตัวแทน)
  • ยอดขายเฉลี่ยต่อบิลและยอดขายเฉลี่ยต่อชิ้นเป็นเท่าไร
  • สินค้าตัวใดมีอัตราการคืนสินค้าสูงกว่าปกติ

📦 หมวดสต็อกและโลจิสติกส์

  • สินค้าตัวไหนใกล้หมดสต็อกหรือเจอ stock-out บ่อยที่สุด
  • สินค้าตัวใดค้างสต็อกเกินระยะเวลาที่กำหนด (เช่น 60 วัน)
  • ระยะเวลาตั้งแต่สั่งซื้อจนถึงรับสินค้ากลับเข้าคลังเป็นเท่าไร
  • สินค้าใดเคลื่อนไหวเร็ว (Fast-moving) และใดเคลื่อนไหวช้า (Slow-moving)

👥 หมวดลูกค้าและพฤติกรรมการซื้อ

  • กลุ่มลูกค้าช่วงอายุนี้/ภาคนี้ มียอดซื้อสูงสุด
  • ลูกค้าใหม่ vs ลูกค้าเก่า ใครสร้างยอดได้มากกว่า
  • สินค้าคู่ใดมักซื้อร่วมกัน (Basket Analysis)
  • อัตราการซื้อซ้ำ (Repeat Purchase Rate) และช่วงเวลาระหว่างการซื้อซ้ำ

💰 หมวดกำไรและต้นทุน

  • สินค้าตัวไหนให้กำไรสูงสุดและต่ำสุด
  • Margin เฉลี่ยต่อบิลและต่อชิ้นเป็นเท่าไร
  • ต้นทุนการขาย (Logistics, โปรโมชั่น, ค่าคอมฯ ตัวแทน) เทียบกับรายได้อย่างไร
  • โปรโมชั่นใดช่วยดันยอดขายแต่กิน margin มากเกินไป

📈 หมวดแนวโน้มและการคาดการณ์

  • แนวโน้มยอดขาย 3–6 เดือนย้อนหลังเป็นอย่างไร
  • สินค้าใดมีแนวโน้มยอดขายเพิ่มขึ้นหรือลดลงรุนแรง
  • คาดการณ์ยอดขายในไตรมาสหน้าและสินค้ายอดนิยมที่จะมาแรง
  • ปัจจัยภายนอก (ฤดูกาล, เทศกาล) มีผลต่อยอดขายอย่างไร

⚠️ หมวดข้อยกเว้น (Exception-Based)

  • สินค้าตัวไหนยอดขายลดลงเกิน X% จากเดือนก่อน
  • สินค้าค้างสต็อกเกินระยะเวลามาตรฐาน
  • ช่องทางใดมียอดขายต่ำกว่าค่าเฉลี่ยหรือคาดการณ์
  • ลูกค้ากลุ่มใดหายไปจากระบบในรอบ 90 วัน

หากต้องการต่อยอดด้วยการสร้าง interactive template ใน Excel (FILTER + LET + LAMBDA) หรือ Power BI (Parameter Tables + Bookmarks) เพื่อให้ผู้ใช้งานเลือกคำถามแล้ว dashboard จะตอบทันที บอกมาได้เลยครับ


ข้อมูลเสริมที่น่าสนใจเพิ่มเติม

  • แนวคิดการออกแบบ UX สำหรับถามก่อนโชว์: สร้างหน้าจอคำถาม (Question Panel) ก่อนเข้าสู่ visualizations
  • เทคนิค Management by Exception: เน้นแสดงเฉพาะเคสที่เกิน Threshold แล้วดูภาพรวมปกติด้วย KPI cards
  • เคล็ดลับการตั้ง Threshold อัจฉริยะ: ใช้ค่าเฉลี่ยย้อนหลัง ± Standard Deviation เพื่อกำหนด “ขีดแดง” แบบไดนามิก
  • แนวทางทำ Alert ใน Power BI: Data-driven alerts ผสานกับ Microsoft Teams หรือ Email เพื่อแจ้งเตือนแบบเรียลไทม์




จะต้องสร้างภาพหรือกราฟอย่างไรให้ตอบปัญหาเหล่านี้

Proposing visuals for questions

For the user's question on what visuals to use, my initial thought is to suggest a combination of key performance indicator (KPI) cards, with a mix of line charts, bar charts, heat maps, scatter plots, and waterfall charts. These cover a variety of question types well. I'll also add interactive elements, like slicers or grids.

Next, I can provide details on how to structure these visuals, maybe even suggesting an Excel template as a starting point. But first, let me double-check which would be ideal for each specific type of data or question.

คำตอบแบบย่อ

ใช้ชุดวิดเจ็ต (KPI cards), แผนภูมิภาพเคลื่อนไหว และกราฟเชิงเปรียบเทียบ ที่ออกแบบให้สอดคล้องกับแต่ละคำถามหลัก เช่น แผนภูมิแท่ง, เส้น, พาย, ความร้อน (heatmap), Waterfall และ Scatter พร้อมสร้าง Question Panel ให้ผู้ใช้เลือกก่อนเข้าโซนภาพหลัก


1. KPI Cards & Summary Tiles

ก่อนเข้าสู่กราฟใหญ่ ให้แสดงการ์ดสรุปเพื่อจับตาค่าที่สำคัญทันที

  • ยอดขายรวม (วันนี้/เดือนนี้)
  • กำไรสุทธิรวม
  • สินค้าขายดีอันดับ 1–3
  • จำนวน SKU ใกล้หมดสต็อก
  • อัตราการคืนสินค้า

2. ยอดขายและประสิทธิภาพ

  • แผนภูมิแท่งแนวนอน (Bar Chart) เปรียบเทียบยอดขายตามสินค้า/ช่องทาง
  • แผนภูมิเส้น (Line Chart) แสดงเทรนด์ยอดขายย้อนหลัง (วัน–เดือน)
  • Combo Chart (Bar + Line) แสดงยอดขายกับ Margin ในกราฟเดียว
  • Waterfall Chart เพื่อวิเคราะห์การเปลี่ยนแปลงยอดขาย (เดือนก่อน → เดือนนี้)

3. สต็อกและโลจิสติกส์

  • Heatmap แสดงอายุสต็อก (Days in Stock) แต่ละ SKU; สีเข้ม = ค้างนาน
  • Bullet Chart เปรียบเทียบปริมาณคงเหลือเทียบกับจุดสั่งซื้อขั้นต่ำ
  • Funnel Chart แสดงกระบวนการนำเข้า–เก็บ–จำหน่าย เพื่อดูจุดคอขวด

4. ลูกค้าและพฤติกรรม

  • Clustered Column Chart แสดงยอดซื้อของลูกค้ากลุ่มต่างๆ (อายุ, ภูมิภาค)
  • Sankey Diagram หรือ Network Graph สำหรับ Basket Analysis แสดงคู่สินค้าที่ซื้อร่วมกัน
  • Cohort Analysis Table พร้อม Conditional Formatting เพื่อดูอัตราซื้อซ้ำตามช่วงเวลาที่ต่างกัน

5. กำไรและต้นทุน

  • Scatter Plot แกน X = ยอดขาย, แกน Y = Margin เพื่อแยกสินค้ากำไรสูง/ต่ำ
  • Waterfall Chart แยกต้นทุนหลัก (โลจิสติกส์, โปรโมชั่น, ค่าคอมฯ) เพื่อดูว่าแต่ละหัวข้อกิน margin เท่าไร
  • Marimekko Chart (Mosaic Plot) แสดงสัดส่วนรายได้ vs ต้นทุนในแต่ละช่องทาง

6. แนวโน้มและการคาดการณ์

  • Slope Chart เปรียบเทียบการเปลี่ยนแปลงยอดขายสินค้าเรือธงระหว่างไตรมาส
  • Forecasting Line Chart พร้อม Confidence Band แสดงการคาดการณ์ยอดขาย
  • Seasonality Heatmap (Months vs Years) เพื่อจับกลุ่มช่วงยอดสูง–ต่ำตามฤดูกาล

7. Exception-Based Highlights

  • Conditional Formatting บนตาราง SKU เพื่อไฮไลต์สินค้ายอดตกเกิน X% หรือสต็อกเกิน Y วัน
  • KPI Gauge หรือ Dial Chart แสดงว่า “อยู่ในโซนปลอดภัย” / “ใกล้เสี่ยง” / “วิกฤติ” ตาม Threshold
  • Alert Panel: แสดง card สีแดงสำหรับเคสเกิน Threshold, สีเหลืองสำหรับเตือนล่วงหน้า

8. Question Panel & Interaction

  1. สร้างหน้า Question Panel ด้านข้าง (หรือบนสุด)
  2. ให้ผู้ใช้เลือกคำถามหลักจาก Dropdown หรือ Buttons
  3. ผูกพารามิเตอร์ (เช่น ช่วงเวลา, ช่องทาง, กลุ่มสินค้า) กับ Visuals ผ่าน FILTER/Bookmarks (Excel) หรือ Parameters/Bookmarks (Power BI)
  4. เมื่อเลือกแล้ว ให้แสดงเฉพาะกราฟที่เกี่ยวข้องกับคำถามนั้น

ไอเดียต่อยอด

  • ใช้ Dynamic Titles: แก้ข้อความหัวกราฟตามการเลือกของผู้ใช้
  • ผนวก Drillthrough: คลิกดูรายละเอียดลึก (เช่น คลิกสินค้า → แสดงยอดแยกตามสาขา)
  • Data-driven Alerts ใน Power BI ส่งแจ้งเตือนเข้า Teams/Email เมื่อ KPI ผิด Threshold



29 September 2025

Story Telling จะไปให้ถึงขั้น Story Selling ต้องไปให้ไกลกว่าดูแค่ยอดรวม

ถ้าถามว่าเดือนไหนขายสินค้าได้น้อยที่สุด โดยไม่ต้องดูที่ตัวเลข
ต้องตอบว่าเดือนกุมภาพันธ์
ทำไมน่ะหรือ
เพราะเดือนนี้มีแค่ 28-29 วัน น้อยกว่าเดือนอื่น

ทำให้ดีขึ้น ต้องเปลี่ยนจากยอดรวมมามองที่ค่าเฉลี่ย
ค่าเฉลี่ยช่วยให้เปรียบเทียบการขายได้ยุติธรรมชึ้น

แต่ทั้งยอดรวมและค่าเฉลี่ย ยังกลบรูปแบบการขายที่สูงบ้าง ต่ำบ้าง นิ่งบ้าง ไม่แน่นอนบ้าง

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

ทุกวันนี้ Dashboards ที่เห็นอวดกันมักทำมาจาก PivotTable หรือใช้สูตร GroupBy / PivotBY ที่ช่วยหายอดรวมมาให้อัตโนมัติ ... อย่าว่าแต่ Story Selling เลย แค่ Story Telling ก็ยังไปไม่ถึง

 

Excel 365 Dynamic Dashboards ที่ผมอวดให้ดูในช่วงที่ผ่านมา หรือที่ใครต่อใครสอนให้ใช้ PivotTable Dashboards นั้นน่ะ เป็นได้แค่สอนว่าจะใช้ Excel ได้อย่างไรบ้างเท่านั้น

ผมอยากรู้ว่า Excel 365 มีอะไรใหม่บ้างที่น่าสนใจ จึงทดลองสร้าง Dashboards ขึ้นมาเพื่ออัปเดทความรู้ของตัวเอง ซึ่งพบว่า Excel 365 ช่วยหายอดรวมได้ง่ายขึ้นมาก แต่พอจะสร้างกราฟ กลับยังทำได้ยากมากเพราะกราฟยังไม่สามารถขยายตัวตาม Dynamic Array

สนใจเรียนรู้การทดลองนี้ เชิญดูได้จาก
https://excelexpertlibrary.blogspot.com/2025/09/excel-365-dynamic-dashboards-season-1-2.html

ผมลองผิดลองถูกให้ดูแบบมือใหม่ที่ไม่เคยใช้สูตรใหม่ๆใน 365 มาก่อนครับ  

28 September 2025

Excel 365 Dynamic Dashboards : Rev 10 "ป้องกัน" คือ สิ่งที่ต้องทำเสมอเมื่อสร้างแฟ้มเสร็จ


☝️ ป้องกันไม่ให้แก้ไขสูตรหรือแก้ไขข้อมูล
ป้องกันไม่ให้กรอกค่าผิดที่ ให้ทำ 2 ขั้นนี้
1. เฉพาะเซลล์ที่เตรียมไว้ให้กรอกค่า สั่ง Format > Cells > Protection > ตัดกาช่อง Locked
2. สั่ง Protect Sheet

พอทำเสร็จแล้วให้กดปุ่ม TAB ไปเรื่อยๆ จะพบว่า Excel กระโดดไปตามเซลล์ที่เตรียมไว้ให้เอง

 

 

✌️ ป้องกันสิทธิความเป็นเจ้าของแฟ้ม ให้ทำ 2 ขั้นนี้
1. สั่ง File > Info > Properties แล้วกรอกข้อมูลของตนเองลงไป
2. สั่ง Protect Workbook เพื่อป้องกันไม่ให้แก้ไข Properties

 

 


 

👌 ป้องกันรหัส VBA ไม่ให้ลอกไปใช้
คลิกขวาที่ชื่อแฟ้มในหน้า VBA Editor สั่ง Properties กาช่อง Lock project for viewing แล้วใส่รหัสลงไป พอเปิดแฟ้มคราวหน้าจะมองไม่เห็นรหัส

อยากรู้ว่าในแฟ้มมีทั้งหมดกี่ชีท ไม่ว่าจะซ่อนชีทไว้ก็ตาม สังเกตรายชื่อชีทด้านซ้าย แต่พอ Protect แล้วจะมองไม่เห็นรายชื่อชีท

 

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

นอกจากนี้อย่าลืมจัด Print Setting เพื่อพิมพ์แต่ละชีท

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

ปล แทบทุกแฟ้มที่ผมสร้างใช้รหัส forall สำหรับทุกคนครับ

27 September 2025

Excel 365 Dynamic Dashboards : Rev 09 อยากขยายกราฟภาพไหนให้คลิกที่ภาพนั้น


Excel สู้ Power BI ไม่ได้ตรงที่ Excel ขาดความสามารถในการย่อขยายภาพกราฟหรือตารางที่ต้องการดูให้มีขนาดเต็มจอ (Responsive) ทำให้เมื่อดูหลายภาพพร้อมกันจะมีขนาดเล็กจนอาจมองแต่ละส่วนยากขึ้น แต่เมื่อใช้ VBA มาช่วยจะหมดปัญหานี้ทันที

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


รหัส VBA ที่ช่วยทำหน้าที่นี้

Sub ShowCategory()
Sheets("Categories").Select
ActiveWindow.Zoom = 100
Application.Goto Reference:="ShowPic"
ActiveWindow.Zoom = True
Application.Goto Reference:="R1C1"

ActiveWindow.DisplayGridlines = False
Application.DisplayFormulaBar = False
ActiveWindow.DisplayHeadings = False
Application.DisplayFullScreen = True
End Sub

Sub Show12Months()
Sheets("Months").Select
ActiveWindow.Zoom = 100
Application.Goto Reference:="ShowMonths"
ActiveWindow.Zoom = True
Application.Goto Reference:="R1C1"

ActiveWindow.DisplayGridlines = False
Application.DisplayFormulaBar = False
ActiveWindow.DisplayHeadings = False
Application.DisplayFullScreen = True
End Sub

Sub ShowProducts()
Sheets("Months").Select
ActiveWindow.Zoom = 100
Application.Goto Reference:="ShowProduct"
ActiveWindow.Zoom = True
Application.Goto Reference:="R1C1"

ActiveWindow.DisplayGridlines = False
Application.DisplayFormulaBar = False
ActiveWindow.DisplayHeadings = False
Application.DisplayFullScreen = True
End Sub

Sub ShowDashboards()
Sheets("Dashboards").Select
End Sub

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

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

Sheets("ชื่อชีทที่ต้องการไป").Select

ส่วนรหัสอื่นที่มีเพิ่มไว้ให้จัดหน้าจอให้ขยายเต็มที่กันไว้เผื่อว่ายังไม่ได้ขยายหน้าจอไว้ก่อน 

☝️ รหัส VBA ข้างต้นแทบไม่จำเป็นต้องเขียนเอง เพียงแค่ฝึกใช้ Macro Recorder บันทึกการคลิกเลือกคำสั่งบนเมนูก็จะได้รหัส VBA ที่ต้องการใช้ให้เอง

ผมอธิบายไว้ในหลักสูตรเคล็ดการเพิ่มผลงาน ลดความซับซ้อนของงานด้วย Excel VBA+Macro ซึ่งเปิดให้สมัครเรียนออนไลน์ฟรีได้ที่เว็บ XLSiam.com