---
title: วิธีเปรียบเทียบข้อมูล 2 List ว่ามี item ไหนที่ต่างกัน?
url: https://www.thepexcel.com/compare-list/
type: post
date: 2019-05-24
updated: 2019-05-25
author: Sira Ekabut
categories: [Power Query]
tags: [VLOOKUP, power query]
---

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

“ไม่ทราบว่ามีวิธีเปรียบเทียบข้อมูลใน Excel จากข้อมูล 2 รายการหรือไม่ ว่ามี item ไหนต่างกันบ้างครับ?”

 

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

 

เอาล่ะ! สมมติผมมีข้อมูลอยู่ 2 List ซึ่งอยู่คนละ Sheet ดังนี้

 
- ![1](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-001.png)
  *SheetA*
- ![2](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-002.png)
  *SheetB*

 

จะเห็นว่ามีทั้งรายการที่มีใน A แต่ไม่มีใน B รวมถึง มีใน B แต่ไม่มีใน A ด้วย

 

ผมจะเสนอวิธี Compare List นี้ 2 วิธีด้วยกัน คือ  
1. วิธีใช้ VLOOKUP  
2. วิธีใช้ Power Query

 

ซึ่งความพิเศษของบทความนี้ คือ **ผมจะแสดง Step การแก้ปัญหาเหมือนกันเป๊ะๆ เลย แต่ใช้แค่เครื่องมือต่างกัน**เท่านั้นเอง

 

เพื่อนๆ จะได้เข้าใจว่า Power Query สามารถทำงานในลักษณะเดียวกับที่เราใช้ Excel ปกติได้ยังไง? ซึ่งเพื่อนๆ ก็จะรู้จักทั้งการ Apppend/ Remove Duplicates / Merge/ เขียนสูตร/Filter ใน Power Query ด้วยครับ

 

## วิธีที่ 1 : ใช้ VLOOKUP เปรียบเทียบข้อมูล

 

#### Step 1 : เอาข้อมูลมารวมกันใน Sheet เดียว

 

ก่อนที่เราจะใช้สูตร VLOOKUP ค้นหาข้อมูล ผมขอนำ List จากทั้งสอง Sheet มารวมกัันก่อนใน Sheet ใหม่ ( ตั้งชื่อว่า Sheet All ) ด้วยการ Copy Paste ปกติ

 

จะเห็นว่ามันมีข้อมูลซ้ำๆ กันอยู่ ดังนั้นเราจะกด Remove Duplicates ก่อนจะทำงานต่อด้วยครับ โดยไปที่ [Data] => Data Tools => Remove Duplicates

 ![3](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-new-002.png) 

#### Step 2 : หาข้อมูลว่าเจอใน List ที่สนใจหรือไม่

 

จากนั้นเราจะใช้ VLOOKUP หาว่ามีข้อมูลที่เราสนใจใน Sheet A หรือไม่?

 

ดังนั้นเราจะเขียนสูตรประมาณนี้ก่อนครับ  
หาใน Sheet A =VLOOKUP(A2,SheetA!A:A,1,FALSE)

 ![4](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-new-003.png) 

เราจะสามารถตีความผลลัพธ์ได้ว่า

 
- ถ้าขึ้น #N/A แปลว่า ไม่เจอข้อมูลใน Sheet A
- ถ้าไม่ใช่ #N/A แปลว่า เจอ ข้อมูลใน Sheet A

 

ในทำนองเดียวกัน ในอีก Sheet เราก็ทำเหมือนกัน ได้ว่า

 

หาใน Sheet B =VLOOKUP(A2,SheetB!A:A,1,FALSE)

 ![5](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-new-004.png) 

#### Step 3 : ทำ Column สรุปผล เพื่อเลือกเฉพาะสิ่งที่เราสนใจ

 

ถ้าเราสนใจอยากจะ List ทุก item ที่ไม่เจอครบทั้ง 2 List ก็ใช้วิธีการสร้างคอลัมน์ใหม่ แล้วใส่เงื่อนไขแบบ OR ลงไปก็ได้ครับ

 

หลักการคือ เราจะตรวจสอบว่ามีตัวใดตัวหนึ่ง Error หรือไม่ แปลว่า อย่างน้อยหา PartNum ที่กำลังสนใจไม่พบใน Sheet ใด Sheet หนึ่ง

 

ดังนี้ =OR(ISNA(B2),ISNA(C2))

 ![6](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-new-005.png) 

จากนั้นเราก็ Filter เฉพาะตัวที่เป็น TRUE ได้เลยครับ (แปลว่า อย่างน้อยหาไม่พบใน Sheet ใด Sheet หนึ่ง)

 ![7](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-new-006.png) 

## วิธีที่ 2 : ใช้ Power Query เปรียบเทียบข้อมูล

 

คราวนี้วิธีที่ 2 จะใช้ [Power Query](https://www.thepexcel.com/power-query-overview/) แทน ซึ่งมีข้อดีตรงที่สามารถกด Refresh เมื่อข้อมูลเปลี่ยนไปได้เลย (ไม่ต้องนั่ง copy paste /remove duplicates ใหม่อีกที) แต่หลักการคิดจะเหมือนกับวิธี VLOOKUP เลยครับ

 

#### Step 1 : เอาข้อมูลมารวมกันใน Sheet เดียว

 

ก่อนอื่นให้เอาทั้ง 2 List เข้าเป็น Query ก่อน (ทั้ง 2 อันเลย)

 

โดยตั้งชื่อ Query แต่ละอันเป็น TableA กับ TableB ด้วย (ทำทีละอัน) และให้ทำเป็น Load to…Only create Connection อย่างเดียว เราจะได้ไม่ต้องมีตารางออกมาเยอะแยะ เดี๋ยวงง

 

**Tips **: **หลักการ คือ เราจะให้ผลลัพธ์สุดท้ายเท่านั้น ที่ออกมาเป็น Table จริงๆ **นอกนั้นให้ create Connection อย่างเดียวนะครับ

 ![8](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-008.png) ![9](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-009.png) ![10](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-010.png) 

พอได้ครบทั้ง 2 Query แล้ว ให้สร้าง Query ใหม่ แบบ Append ก่อน จะได้เห็นภาพครบทุก Item (การ Append คือ เอาข้อมูลมาต่อตูดกัน จำนวนแถวจะเพิ่มขึ้น เหมือนกัยการที่เรา Copy ข้อมูลทั้ง 2 Sheet มาต่อตูดกันแบบวิธีแรกนั่นแหละครับ)

 ![11](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-012.png) 

เลือก Append Table A และ B เข้าด้วยกัน

 ![12](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-013.png) 

ตอนแรกข้อมูลอาจจะออกมาซ้ำกัน (เพราะมันเอาสองตารางมาต่อตูดกันจริงๆ) ดังนั้นเราจะ Remove Duplicates ออกก่อน

 ![13](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-014.png) 

#### Step 2 : หาข้อมูลว่าเจอใน List ที่สนใจหรือไม่

 

พอเราได้ List ที่สมบูรณ์และไม่ซ้ำกันแล้ว จากนั้นเราจะเอาไป Merge กับ Table A (เหมือน VLOOKUP หาข้อมูลใน Table A นั่นแหละ )

 

โดยที่ Step ในการ Merge เค้าจะให้เลือกว่า column ไหนใน 2 ตาราง ที่มีความสัมพันธ์กัน เราก็เลือกไปเลยว่าเป็น PartNum ทั้งคู่นั่นแหละ

 ![14](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-015.png) 

พอกด Ok ตอนแรกมันจะออกมาเป็น Table ก่อน

 

ให้กด Expand เพื่อแตกเอาผลลัพธ์ออกมา (ตรงนี้จริงๆ เลือกได้ว่าจะเอาคอลัมน์ไหนกลับมาบ้าง แต่ในที่นี้เรามีคอลัมน์เดียว 555)

 ![15](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-016.png) 

จะได้ผลลัพธ์ว่ามีการ Map เจอกับ Table A ตัวไหนบ้าง เหมือนกับตอนที่เรา VLOOKUP เลยมะ?

 ![16](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-017.png) 

ทำอย่างนี้อีกทีกับ Table B เพื่อดูว่า Map เจอตัวไหนบ้าง

 ![17](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-018.png) ![18](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-019.png) 

#### Step 3 : ทำ Column สรุปผล เพื่อเลือกเฉพาะสิ่งที่เราสนใจ

 

ถ้าเราอยากได้ตัวที่ตัวใดตัวหนึ่งเป็น Null ดังนั้นเราจะสร้างคอลัมน์ใหม่ โดย Add Column => Custom Column โดยเขียนสูตรแบบ or ดังนี้ (ตรงชื่อคอลัมน์ สามารถ double click จาก List ด้านขวาได้นะ ไม่ต้องพิมพ์เอง)

 ![19](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-021.png) 

พอเรา Filter เลือกเฉพาะที่เป็น TRUE ก็จะได้ตัวที่เราสนใจครับ

 ![20](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-022.png) 

จากนั้นถ้าจะโหลดออกมาเป็น Table ก็ Close & Load ได้เลยจบ เช่นเดียวกับตอนที่ใช้ VLOOKUP

 

แต่มีข้อดีกว่าคือ ถ้าเกิดมีข้อมูลเพิ่มขึ้นอีก เรากด Refresh ทีเดียวจบเลย!!

 ![21](https://www.thepexcel.com/wp-content/uploads/2019/05/compare-list-023.png)

---

_Source: [https://www.thepexcel.com/compare-list/](https://www.thepexcel.com/compare-list/)_
