อะไรคือ Dynamic Range?

Dynamic Range มันก็คือการทำให้ Range มีความสามารถในการ “ยืดได้หดได้” ตามสถานการณ์ที่เหมาะสม
 
เช่น พอเราใส่ข้อมูลเพิ่มปุ๊ป Dropdown List ที่สร้างไว้ก็รู้จักข้อมูลที่เรากรอกเลย หรือ แม้แต่สามารถให้ User เลือกข้อมูลที่จะแสดงผลบบนกราฟได้
 
ซึ่งจริงๆ แล้วการทำ Dynamic Range นั้น มีวิธีการทำอยู่ 2 แนวทางหลักๆ เลย ก็คือ
1.แนวทางการใช้เครื่องมือ Table กับ 2.แนวทางการเขียนสูตร
 
ซึ่งในบทความนี้เราจะมาเรียนรู้การทำ Dynamic Range ด้วย Table ซึ่งเป็นวิธีที่ง่ายที่สุดกันก่อนครับ 

การทำ Dynamic Range ด้วย Table

เครื่องมือ Table (ไม่ใช่ Data Table ที่เรียนผ่านไปแล้วนะ) สามารถสร้าง Dynamic Range ได้แบบง่ายๆ ภายในพริบตา

สมมติ ผมมี Range อยู่ แล้วผม convert เป็น Table ก่อน โดยกด Ctrl+T แล้วติ๊ก My Table has header ด้วย จะได้แบบนี้

01 02

หากผมเอาไปสร้างกราฟแท่งธรรมดาๆ เลย ขอแบบเร็วๆ
ผมขอ กดปุ่ม F11 เลย จะได้กราฟแบบนี้ (ซึ่งจะเห็นว่ามีข้อมูล 4 แท่ง)

03

ต่อไปเราไปเพิ่มข้อมูลต่อท้าย Table อีก สังเกตว่าสีของ Table จะงอกออกไปครอบคลุมข้อมูลใหม่โดยอัตโนมัติ

04

พอเรากลับมาดูกราฟ ก็จะเห็นว่ามีข้อมูลใหม่ถูกเพิ่มมาโดยอัตโนมัติ

05

นี่แหละครับคือความเป็น Dynamic Range แบบง่ายๆ ซึ่งสามารถนำไปประยุกต์กับการเลือก Data Source ของ PivotTable ได้ด้วย ซึ่งจะช่วยให้ไม่ต้องมาเลือก Source Data ใหม่ และไม่ต้องเลือกทั้งคอลัมน์เผื่อไว้ก่อน (ถ้าเลือกเผื่อไว้ก่อนจะกด Group Data แบบอัตโนมัติไม่ได้)

Dynamic Dropdown List

อีกตัวอย่างหนึ่งคือการทำ Dynamic Dropdown List เช่น จาก Table ก่อนหน้านี้ ผมจะเอาชื่อทีมมาเป็น Dropdown ให้เลือก

ซึ่งผมสามารถอ้างอิงรายการในทีมได้โดยเขียนสูตร = แล้วไปจิ้มตรงหัวคอลัมน์ จะได้ว่า =Table1

[ทีม]

06

ผมก็เอาสูตรที่ได้เนี่ยแหละ ไปใส่ใน Data Validation List เลย แต่ปรากฏว่า Excel ไม่ยอม!

แต่อย่ายอมแพ้ครับ มันมีวิธีแก้เล็กน้อย โดยการใช้ Defined Name มาช่วยนั่นเอง

วิธีการคือ เอาสูตรที่ได้ไปตั้งชื่อก่อนครับ แล้วค่อยเอาชื่อนั้นไปใส่ใสน Data Validation อีกทีหนึ่ง

07

ใส่ใน Data Validation ได้เลย

08

จากนั้นจะเห็นว่า หากในอนาคตเรามีเพิ่มรายการเข้าไป Dropdown ของเราก็จะรู้จักรายการใหม่ๆ นั้นเองโดยอัตโนมัติครับ

09

เราได้เรียนรู้การทำ Dynamic Range ด้วย Table ไปแล้ว ซึ่งจะเห็นว่ามันทำได้ง่ายมากๆ แต่ผมจะบอกว่าเราต้องเรียนรู้วิธีอื่นเอาไว้ด้วย เพราะ Table อย่างเดียวก็ไม่ตอบโจทย์ในบางสถานการณ์

เช่น ถ้ามี Table อยู่ในไฟล์ เราจะใช้เครื่องมือ Custom View ไม่ได้ หรือ บางทีเราต้องการทำ Dynamic Range ที่ซับซ้อนมากขึ้น เช่น แสดงยอดขาย 6 เดือนล่าสุดไปเรื่อยๆ แบบนี้จะต้องใช้สูตรแทนการใช่ Table แล้วครับ ซึ่งใครอยากรู้ รออ่านได้ในหนังสือเล่ม 2 นะครับ ^^