32 ตรวจสอบ VLookup กันหน่อย

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

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

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

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

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

สูตรที่ดีต้องมีลักษณะต่อไปนี้

  1. สามารถนำมาใช้คำนวณได้ผลลัพธ์ถูกต้องตรงตามความต้องการ ไม่ว่าโครงสร้างตารางจะแตกต่างไปจากเดิมหรือค่าที่นำมาใช้คำนวณมีค่าต่างไปจากปกติก็ตาม
  2. เหมาะสมกับความรู้ความสามารถของผู้ใช้แฟ้มนั้น เพื่อช่วยทำให้ผู้ใช้งานสามารถเข้าใจหลักการคิดและสามารถปรับปรุงแก้ไขสูตรได้เอง
  3. ภายในวงเล็บของสูตร ต้องไม่มีค่าคงที่ใดๆ หรือหากยอมให้มีค่าคงที่ก็ต้องมั่นใจว่าจะมีค่าซึ่งคงที่ไปตลอดเท่านั้น เช่น ตัวเลข 2 ในสูตร =VLookup(A1, DataRange, 2) ซึ่งเป็นตัวเลขชี้เลขที่ column ของคำตอบภายใน DataRange หากจะปล่อยให้ใช้เลข 2 ได้ต่อเมื่อมั่นใจว่าในอนาคตจะไม่มีใครสั่ง insert column แทรกเข้าไปในตารางของ DataRange
  4. ค่าที่ส่งต่อมาใช้ภายในวงเล็บของสูตรใดๆ อาจใช้วิธีลิงค์ค่าที่คำนวณมาจากเซลล์อื่นหรือเป็นสูตรคำนวณซ้อนเข้าไป เช่น ลิงค์ตัวเลข 2 ในสูตร VLookup ข้างต้นมาจากเซลล์ที่ใช้กำหนดเลขที่ column อีกต่อหนึ่งหรือใช้สูตร Match ซ้อนเข้าไปเพื่อทำหน้าที่คำนวณหาเลขที่ column แทน ทำให้สูตรยาวขึ้นเป็น =VLookup(A1, DataRange, Match( B12, FieldNameRange, 0 ))
  5. แทนที่จะใช้สูตรปรับแก้ error ให้เป็นค่าอื่นที่คำนวณต่อได้ สูตรที่ดีต้องสามารถคำนวณผลลัพธ์ได้ตามต้องการโดยไม่จำเป็นต้องใช้สูตรแก้ error
  6. ไม่มีส่วนใดของสูตรที่ต้องคำนวณซ้ำและไม่มีการใช้เซลล์ส่วนใดของตารางที่คำนวณซ้ำ โดยใช้วิธียกส่วนที่ต้องคำนวณซ้ำไปตั้งชื่อเป็น Formula Name หรือใช้เซลล์คำนวณหาค่าที่ใช้ซ้ำให้คำนวณเพียงครั้งเดียวแล้วจึงลิงค์ผลลัพธ์มาใช้ต่อ จะทำให้ Excel คำนวณเร็วขึ้น
  7. สูตรต้องสั้น กะทัดรัด และหลีกเลี่ยงการสร้างสูตรขึ้นมาใช้เองหากมีสูตรสำเร็จรูปอยู่แล้ว
  8. หากสูตรยาวมากและจำเป็นต้องนำไปใช้บ่อยๆ ควรตั้งชื่อสูตรเป็น Formula Name หรือเปลี่ยนไปสร้างสูตรด้วย VBA แทน
Online Excel Expert Training @ XLSiam
Scroll to Top