บางครั้งต้องเปรียบเทียบ 2 ไฟล์ CSV หาความต่างหรือความเหมือนกัน Excel มีหลายวิธี บทความนี้สอน 6 วิธี
6 วิธีเปรียบเทียบ 2 ไฟล์ CSV ใน Excel
ใช้ 2 ไฟล์: File 1.csv และ File 2.csv วางในโฟลเดอร์เดียวกัน
1. ดูควบคู่ (View Side by Side)
- เปิดทั้ง 2 ไฟล์ > View > View Side by Side > Arrange All > Vertical > OK
- เลื่อนดูพร้อมกันได้ (Synchronous Scrolling)
2. ใช้ฟังก์ชัน IF
- สร้าง Workbook ใหม่ > เซลล์ B4 ใส่สูตร:
=IF('[File 1.csv]File 1'!B4<>'File 2.csv'!B4,1,0)
- ลาก Fill Handle ขยายสูตรครอบคลุมข้อมูลทั้งหมด
- ผลลัพธ์: 1 = ต่างกัน, 0 = เหมือนกัน
3. ใช้ AND, IF, ISBLANK (จัดการเซลล์ว่าง)
- สูตรใน B4:
=IF(OR(ISBLANK('[File 1.csv]File 1'!B4),ISBLANK('[File 2.csv]File 2'!B4)),"",IF('[File 1.csv]File 1'!B4='[File 2.csv]File 2'!B4,0,1))
- เซลล์ว่างในไฟล์ใดไฟล์หนึ่ง → ผลลัพธ์ว่าง (ไม่ใช่ 1)
4. ใช้ IF และ COUNTIF
- เพิ่มคอลัมน์ Compare > สูตรใน F5:
=IF(COUNTIF('File 2.csv'!$E$5:$E$14,E5)=0,1,0)
- เปรียบเทียบค่าในคอลัมน์ Unit ระหว่าง 2 ไฟล์
5. ใช้ Conditional Formatting
- คัดลอกแผ่นงาน File 2 มาไว้ใน File 1 (Conditional Formatting ไม่ทำงานข้าม Workbook)
- เลือกช่วง B4:E14 > Home > Conditional Formatting > New Rule
- Use a formula:
=B4<>"File 2"!B4> Format > Fill: Red > OK - เซลล์ที่ต่างกันจะไฮไลท์สีแดง
6. ใช้ VBA Macro
- รวม 2 ไฟล์ใน Workbook เดียว (2 แผ่นงาน) > Developer > Visual Basic > Insert > Module
- วางโค้ด:
Sub Compare_2_CSV()
Dim dRange As Range, Select_Cell As Range
Sheets(1).Activate
Set dRange = ActiveCell.CurrentRegion
For Each Select_Cell In dRange
If Select_Cell.Value <> Sheets(2).Range(Select_Cell.Address).Value Then
Sheets(2).Range(Select_Cell.Address).Interior.Color = vbRed
End If
Next Select_Cell
End Sub
- เลือกเซลล์ B4 ในแผ่น File 1 > Run โค้ด
- แผ่น File 2: เซลล์ที่ต่างกันจะไฮไลท์สีแดง
สรุป
6 วิธีเปรียบเทียบ CSV: View Side by Side, IF, IF+ISBLANK, IF+COUNTIF, Conditional Formatting, VBA เลือกตามความสะดวก ดาวน์โหลดไฟล์ฝึกหัดได้ ติดตาม Exceldemy