เปรียบเทียบข้อมูล

วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน?

"ไม่ทราบว่ามีวิธีเปรียบเทียบข้อมูลใน Excel จากข้อมูล 2 รายการหรือไม่ ว่ามี item ไหนต่างกันบ้างครับ?" คำถามนี้มีคนถามบ่อยพอสมควร เลยเขียนเป็นบทความให้อ่านกัน คนอื่นๆ จะได้รับประโยชน์ไปด้วยเนอะ เอาล่ะ! สมมติผมมีข้อมูลอยู่ 2 List ซึ่งอยู่คนละ Sheet ดังนี้ SheetA SheetB จะเห็นว่ามีทั้งรายการที่มีใน A แต่ไม่มีใน B รวมถึง มีใน B แต่ไม่มีใน A ด้วย ผมจะเสนอวิธี Compare List นี้ 2 วิธีด้วยกัน คือ1. วิธีใช้ VLOOKUP2. วิธีใช้ Power Query ซึ่งความพิเศษของบทความนี้ คือ ผมจะแสดง Step การแก้ปัญหาเหมือนกันเป๊ะๆ เลย แต่ใช้แค่เครื่องมือต่างกันเท่านั้นเอง…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 1

สอน 2 เทคนิคการทำ VLOOKUP หลายค่า จากคำค้นหาเดียว

จะทำยังไงถึงจะทำ VLOOKUP หลายบรรทัด จาก Lookup_Value เดียวได้นะ?? นี่คือคำถามที่เกิดขึ้นบ่อย เพราะปกติแล้ว เวลาเราใช้ VLOOKUP หรือจะ INDEX MATCH ก็แล้วแต่ หาก Lookup_Value ซ้ำกัน มันจะได้ผลลัพธ์เป็นตัวบนสุดเสมอ บทความนี้ผมจะมาบอกวิธีทำ VLOOKUP เพื่อแสดงผลลัพธ์หลายบรรทัดให้เอง และจะทำให้ดูหลายแบบด้วยครับ!! โจทย์คือแบบนี้ครับ เราต้องการเลือกสินค้า แล้วให้แสดง Order ID ทั้งหมดของสินค้านั้นออกมา (ถ้าเราเอา Order ID ออกมาได้แล้ว อย่างอื่นก็คงไม่ยากแล้วจริงมั้ยครับ?) วิธีที่ 1 : ใช้สูตรเพื่อทำ vlookup หลายบรรทัด ใช้ VLOOKUP + Helper Column ในเมื่อ ปัญหาคือมี lookup_value ซ้ำกันหลายตัว ใน table_array…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 2

VLOOKUP โหมด Approximate Match

อย่างที่เคยบอกไปแล้วว่า VLOOKUP มี 2 แบบ ซึ่งแบบพื้นฐานคือแบบ Exact Match ซึ่งจะ Map ข้อมูลได้ จะต้องเจอคำค้นหาอยู่ในคอลัมน์แรกของตารางอ้างอิงแบบเป๊ะๆ เท่านั้น แต่ในหลายๆ สถานการณ์ VLOOKUP แบบ Exact Match นั้นไม่สามารถตอบโจทย์ได้ เช่น กรณีที่มีเงื่อนไขในการใช้ตารางอ้างอิงเป็นช่วง เช่น การจัดเกรด การให้ commission เป็นต้น ตัวอย่างเช่น การจัดเกรดจากคะแนนแบบนี้ จะเห็นว่า ถ้าจะทำตารางเพื่อรองรับการหาแบบ Exact Match จะต้องสร้างตารางให้มี 100 ค่าเลย เพื่อรองรับแต่ละคะแนน (จริงๆ ต้องทำ 101 ค่าด้วย เพราะต้องรองรับตั้งแต่ 0-100 คะแนน) ยิ่งที่ค่าตัวเลขคะแนนเป็นทศนิืิยมได้นี่ ไม่มีทางสร้างตารางแบบ Exact Match รองรับไว้ล่วงหน้าได้เลย แต่ถ้าเราเปลี่ยนวิธีมาใช้…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 3

มีข้อมูลเห็นอยู่เต็มตา แต่ VLOOKUP หาไม่เจอ ทำไงดี?

เคยบ้างมั้ย? เวลาใช้ VLOOKUP แล้ว Error แบบไม่รู้สาเหตุ??? ฐานข้อมูลหรือตารางอ้างอิงก็เห็นอยู่จะๆ ว่ามีตัว Lookup_Value ที่เรากรอกลงไป (เลข 100) และก็ดูเหมือนว่าเขียนสูตร VLOOKUP ถูกต้องหมดทุกอย่างแล้ว แต่ผลลัพธ์กลับออกมาเป็น Error ซะอย่างนั้น? เอ ทำไมหว่า?? .... หรือว่าผี Excel หลอก!! ไม่ใช่หรอกครับ ผมจะบอกว่าสาเหตุนึงที่คนมักจะลืมนึกไปก็คือ ประเด็นเรื่อง "ประเภทของข้อมูล" นั่นเอง ประเภทข้อมูลนั้นสำคัญมาก! รู้หรือไม่ว่าพวก VLOOKUP MATCH หรือแม้แต่การใช้เครื่องหมาย = เพื่อเปรียบเทียบข้อมูล 2 ตัวเข้าด้วยกัน ถ้ามันเป็นข้อมูลคนละประเภท ไม่ว่าจะหน้าตาเหมือนกันแค่ไหน Excel ก็จะถือว่าเป็นข้อมูลคนละตัวกันทันที เราไม่สามารถรู้ประเภทของข้อมูลได้ด้วยตาเปล่า เพราะอาจถูกลวงด้วยการปรับ Format เช่น ในรูปผมปรับให้ข้อมูลอยู่กึ่งกลางทั้งหมด จึงไม่มีทางดูออกเลยว่าเป็น Number หรือ Text วิธีที่จะเช็คได้ดีที่สุดคือใช้ฟังก์ชั่น…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 4

จะ Mapping ข้อมูลที่อยู่ด้านซ้าย ใช้ VLOOKUP ไม่ได้ ทำไงดี?

ฟังก์ชันยอดฮิตในการ Map ข้อมูลที่หลายคนชอบใช้ก็คือ VLOOKUP ซึ่งมีข้อดีคือ ใช้ฟังก์ชันเดียวก็ Map ข้อมูลได้ดั่งใจ แต่ข้อเสียคือถ้าข้อมูลอยู่ด้านซ้ายของคอลัมน์ที่จะค้นหา มันจะเอาค่ากลับมาไม่ได้! แล้วที่นี้จะทำไงดี?? ถ้าคุณไม่สามารถจะย้ายคอลัมน์ข้อมูลดิบได้ วิธีจัดการกับปัญหานี้ที่อยากจะแนะนำ คือ เปลี่ยนไปใช้ฟังก์ชั่นอื่นซะเถอะครับ (อ้าว) ตัวที่ผมอยากจะแนะนำที่สุดก็คือ INDEX+MATCH เพราะนอกจากจะเอาข้อมูลมาได้ทั้งทางซ้ายและขวา ยังทนทานต่อการแทรกคอลัมน์อีกต่างหาก (แทรกแล้วข้อมูลที่ Lookup มาก็ยังถูกต้องอยู่) ก่อนอื่น ผมขอทวนการทำงานของ INDEX แบบสั้นๆ นั่นคือ มันจะดึงข้อมูลตามพิกัดที่เราระบุได้ เช่น หากผมเขียนสูตรแบบนี้ ซึ่งเป็นการบอกว่า ในพื้นที่ A2:A5 นั้น ให้เอาข้อมูลที่อยู่ลำดับที่ 2 กลับมานะ ก็จะได้คำตอบ T004 แต่เรื่องของเรื่องคือ ที่เราใส่เลข 2 ได้ เพราะเราดูด้วยตาเปล่าว่า เจ้าสมหญิง อยู่ลำดับที่ 2 แต่ถ้าเราจะให้ Excel…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 5

Excel ความเร็วแสง : ตอน VLOOKUP ความเร็วแสง

Excel ความเร็วแสง หากมนุษยชาติมีภารกิจจะต้องเดินทางไปยังดวงดาวในอวกาศอันไกลโพ้น... พวกเขาจะทำอย่างไร? เหล่านักบินอวกาศมีทางเลือกหลายทาง ตั้งแต่ เดินทางไปเลย เตรียมเสบียงไปเต็มที่ กำลังใจมาเต็ม ซักวันคงเดินทางถึง! ตัดใจ ยอมแพ้กับภารกิจ อยู่บ้านเฉยๆ ดีกว่า พัฒนาวิธีเดินทางด้วยความเร็วแสงให้ได้! ถ้าทำได้ทุกคนคงอยากจะเลือก ข้อ 3 จริงมั้ยครับ? ในชีวิตของการใช้งาน Excel ก็เช่นกัน... หลายครั้งเราทำงานกับข้อมูลจำนวนมหาศาล เปรียบได้กับภารกิจการเดินทางอันแสนไกลของนักบินอวกาศ... เช่น ต้องใช้ VLOOKUP Map ข้อมูลที่มีหลายหมื่น หลายแสนบรรทัด คุณจะทำอย่างไร? นั่งรอไป ซักวันนึง เจ้า % Calculate จะกระดิกไปถึง 100% ในที่สุด พร้อมกับพลังในตัวของคุณที่หมดลง ไม่ยุ่งกับข้อมูลเยอะๆ เด็ดขาด เรียนรู้วิธีใช้เทคนิค Excel ความเร็วแสง! Excel ความเร็วแสง คือเทคนิคหลายอย่างที่ผมจะรวบรวมไว้เป็น series เรื่องการทำงานใน Excel…

VLOOKUP หลายเงื่อนไข ง่ายนิดเดียว

ปกติแล้วคำที่เราค้นหา หรือที่เรียกว่า Lookup_Value ในสูตร VLOOKUP นั้นจะมีค่าได้แค่ตัวเดียว แต่ถ้าสิ่งที่เราค้นหาจะต้องมีหลายเงื่อนไขแบบในรูปล่ะ จะทำไง? เคล็ดลับในการแก้ปัญหานี้ก็คือ เราต้องรวบข้อมูลหลายเงื่อนไข “ให้เป็นก้อนเดียวกัน” ก่อน โดยสามารถใช้การเชื่อมข้อความด้วย & และอาจหาตัวคั่นแปลกๆ มาช่วย เช่น | (เครื่องหมาย pipeline) จากนั้นค่อยใช้คอลัมน์ที่สร้างขึ้นใหม่ (helper) เป็น Lookup_Value แทน ดังรูป เพียงเท่านี้เราก็ทำ VLOOKUP หลายเงื่อนไขได้แล้วครับ ง่ายมากๆ ^^

IF vs CHOOSE vs VLOOKUP เปรียบเทียบฟังก์ชั่นทำหน้าที่ตัดสินใจ

"ชีวิตคนเราเต็มไปด้วยการตัดสินใจ..." จริงๆ แล้วคนเราตัดสินใจอยู่ตลอดเวลา (บางทีก็ตัดสินใจที่จะอยู่เฉยๆ 555) บางทีเราก็ต้องเลือกระหว่าง Choice 2 อย่าง แต่บางทีก็มี Choice มากมายนับไม่ถ้วน... การทำงานกับ Excel ก็เช่นกัน หลายๆ ครั้งเราก็ต้องตัดสินใจ "ว่าถ้าข้อมูลเป็นแบบนี้ๆ แล้วจะให้เกิดเหตุการณ์อะไรขึ้น??" ซึ่งจริงๆ แล้วการตัดสินใจใน Excel นั้นมีฟังก์ชั่นที่มาช่วยในเรื่องนี้หลายตัวด้วยกัน แต่ในบทความนี้ผมจะขอยกตัวอย่างฟังก์ชั่นที่น่าสนใจมากๆ 3 อัน นั่นคือ IF, CHOOSE, และ VLOOKUP นั่นเอง ซึ่งผมบอกเลยว่า นี่คือ "หัวใจสำคัญ" ที่จะทำให้คุณใช้ Excel ได้เก่งกาจขึ้นอีกมากครับ!! ก่อนอื่น ขอเริ่มจากฟังก์ชั่นพื้นฐานที่สำคัญที่สุดในการคิดแบบตัดสินใจ นั่นคือ IF ครับ IF IF แปลได้ตรงๆ ว่า "ถ้า" ซึ่งความหมายและหน้าที่ของฟังก์ชั่นก็ตรงตามคำศัพท์ครับ นั่นคือ "ถ้า…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 6

VLOOKUP แบบหลายเงื่อนไขทำไง? ง่ายนิดเดียว!

มีหลายคนถามผมมาบ่อยมาก ว่าถ้าเราอยากจะ VLOOKUP หลายเงื่อนไข (Lookup_Value มี 2 ช่องขึ้นไป) ต้องทำยังไงดี? ตัวผมเองก็ดันไม่ได้เขียนตัวอย่างนี้ไว้ในหนังสือซะด้วยสิ ก็เลยขอมาเขียนในนี้ให้อ่านกันฟรีๆ เลยแล้วกัน! *สำหรับคนที่อยากรู้วิธี VLOOKUP คำเดียว แต่ได้ผลลัพธ์กลับมาหลายค่า ให้ดูตาม link นี้แทนครับ VLOOKUP มี Lookup_value หลายตัวได้ด้วยเหรอ? ผมจะบอกว่า ไอ้ lookup_value ของ VLOOKUP เนี่ย มันมีได้แค่ตัวเดียวแหละครับ ก็มันมี Argument เดียวไงจำได้มั้ย? มันเขียนว่า =VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) เห็นมั้ยครับว่ามีแค่ตัวเดียว แล้วเราจะใส่เข้าไปหลายเงื่อนไขได้ยังไง? คำตอบก็คือ...มันมี Trick ครับ ถ้าคิดให้ดีๆ เราสามารถเอาค่าที่เราต้องการจะ Lookup ที่มีหลายๆ เงื่อนไขจับมัดเป็น Lookup_Value ก้อนเดียวก็ได้นี่นา ถ้ารู้แบบนี้แล้ว จะกลัวอะไรครับ? มาลองดูตัวอย่างจริงกันเลยดีกว่า! สมมติเรามีข้อมูลแบบนี้ครับ เราต้องการเอาข้อมูลอ้างอิงข้างบน…
วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน? 7

Fuzzy Lookup สะกดผิดก็ Lookup หาเจอ!

คุณเคยมีปัญหาต้องใช้ VLOOKUP ในการ Map ข้อมูล แต่คำค้นหา (lookup_value) สะกดผิด เลยไม่ตรงกับค่าในตารางอ้างอิงมั๊ยครับ? ใน VLOOKUP นั้น ถึงแม้จะมีโหมด Approximate Match ก็ตาม แต่ความสามารถของมันไม่สามารถหาคำใกล้เคียงได้เหมือนชื่อมันหรอกนะครับ การจะ Lookup คำแบบสะกดผิดได้ต้องใช้วิธีอื่น เช่น เขียน VBA ซึ่งค่อนข้างยากมาก แต่ผมมีข่าวดีมาบอก คือ เราสามารถใช้ Add-in ที่ชื่อ Fuzzy Lookup ของ Microsoft มาแก้ปัญหานี้ได้ครับ ฟรีด้วย! ก่อนอื่น คุณต้องไปดาวน์โหลด add-in ดังกล่าวก่อนที่ https://www.microsoft.com/en-us/download/details.aspx?id=15011 จากนั้นลงโปรแกรม แล้วปิด-เปิด Excel ใหม่ จากนั้นพอเข้า Excel แล้วมันจะมี Ribbon ขึ้นมาใหม่ 1…