วิธีหาความต่างระหว่างไฟล์สเปรดชีตสองเวอร์ชัน
การหาว่าอะไรเปลี่ยนไประหว่างไฟล์สเปรดชีตสองเวอร์ชัน ให้จับคู่แต่ละแถวในไฟล์เก่ากับแถวคู่กันในไฟล์ใหม่ แล้วเปรียบเทียบเซลล์ของแต่ละคู่ ส่วนที่ยากที่สุดคือการจับคู่ เพราะการเทียบแถวต่อแถวตามตำแหน่งจะพังทันทีที่มีการแทรกแถวหรือเรียงข้อมูลใหม่ เนื่องจากแถวถัดไปทั้งหมดจะถูกเทียบกับคู่ที่ผิด การจับคู่ด้วยคอลัมน์คีย์ เช่น เลขที่ออเดอร์ ทำให้แต่ละแถวจับคู่กับข้อมูลของตัวเองได้ แม้แถวจะย้ายที่ไป
เปรียบเทียบไฟล์สเปรดชีตหาว่ามีอะไรเปลี่ยนไประหว่างไฟล์ใช้ฟรีเหตุใดลำดับแถวจึงทำให้การเทียบแบบธรรมดาพัง
การเทียบแถว 2 กับแถว 2 ทำได้เร็วและง่าย แต่ก็หลอกได้ง่าย เพิ่มแถวเดียวไว้ด้านบน แถวที่ตามมาทุกแถวจะถูกจับคู่ผิด ผลลัพธ์คือ "การเปลี่ยนแปลง" หลายร้อยรายการ ซึ่งจริง ๆ แล้วเป็นการเปลี่ยนแปลงเพียงครั้งเดียว การเรียงข้อมูลใหม่ก็ก่อปัญหาแบบเดียวกัน การเรียงใหม่ไม่ได้เปลี่ยนข้อมูลเลย แต่การเทียบตามตำแหน่งจะรายงานว่าทุกแถวที่ย้ายที่ไปมีการเปลี่ยนแปลง ถ้าผลการเทียบดูใหญ่เกินจริง ให้ตรวจลำดับก่อน
ใช้คอลัมน์คีย์
คอลัมน์คีย์คือคอลัมน์ที่ระบุแถวและไม่เปลี่ยนค่าสำหรับแถวนั้น เช่น เลขที่ออเดอร์ รหัสสินค้า หรือรหัสลูกค้า เลือกคอลัมน์ที่แต่ละค่าปรากฏเพียงครั้งเดียว ถ้าคีย์ซ้ำกัน การเทียบจะแยกไม่ออกว่าแถวไหนคือแถวไหน ดังนั้นให้หาคอลัมน์ที่ดีกว่า หรือรวมคอลัมน์สองอันเข้าด้วยกัน
เมื่อมีคีย์ ทุกแถวจะจัดอยู่ในกลุ่มใดกลุ่มหนึ่งจากสี่กลุ่มนี้:
- เพิ่มใหม่ คีย์มีอยู่ในไฟล์ใหม่เท่านั้น
- ถูกลบ คีย์มีอยู่ในไฟล์เก่าเท่านั้น
- เปลี่ยนแปลง คีย์มีอยู่ในทั้งสองไฟล์ และมีอย่างน้อยหนึ่งเซลล์ที่ต่างกัน
- ไม่เปลี่ยนแปลง คีย์มีอยู่ในทั้งสองไฟล์ และทุกเซลล์ที่เทียบตรงกัน
เปรียบเทียบไฟล์ทั้งสอง ให้คุณเลือกคอลัมน์คีย์ แสดงแต่ละกลุ่มพร้อมจำนวน และแสดงรายการเซลล์ที่ต่างกันในแถวที่เปลี่ยนแปลงแต่ละแถว
เซลล์ที่เปลี่ยน และคอลัมน์ที่เปลี่ยนทุกครั้ง
แถวที่เปลี่ยนแปลงอาจต่างกันเพียงหนึ่งเซลล์จากสามสิบเซลล์ ดังนั้นให้ดูที่ตัวเซลล์ การที่ราคาเปลี่ยนจาก 12.50 เป็น 13.00 เป็นการเปลี่ยนแปลงคนละประเภทกับการที่ที่อยู่ในแถวเดียวกันถูกแทนที่ด้วยที่อยู่ใหม่ ให้ข้ามคอลัมน์ที่เปลี่ยนทุกครั้งที่บันทึก เช่น คอลัมน์ "แก้ไขล่าสุด" เพื่อไม่ให้มาเติมรายการของคุณ
ตัวพิมพ์และช่องว่างก็สำคัญ "Berlin" กับ "berlin " ต่างกันสำหรับคอมพิวเตอร์ การละเว้นตัวพิมพ์และช่องว่างที่ปลายทั้งสองด้านจะช่วยลบการเปลี่ยนแปลงที่ไม่จริงเหล่านี้ได้ แต่การแก้คำสะกดให้ถูกต้องเป็นการเปลี่ยนแปลงจริง ดังนั้นให้ใช้ตัวเลือกเหล่านี้เฉพาะเมื่อความต่างนั้นไม่สำคัญกับคุณ
ตัวเลขที่ดูต่างแต่มีค่าเท่ากัน
เซลล์สองเซลล์อาจแสดงข้อความต่างกันแต่เก็บค่าเดียวกัน นี่คือแหล่งที่พบบ่อยที่สุดของการเปลี่ยนแปลงที่ไม่จริง:
- ตัวคั่นหลักพัน 1,000 กับ 1000 เป็นตัวเลขเดียวกัน
- ทศนิยม 12.5 ที่แสดงเป็น 12.50 เป็นค่าเดียวกันในการแสดงผลที่ต่างกัน
- รูปแบบสกุลเงิน เซลล์ที่จัดรูปแบบเป็น £5 เก็บตัวเลข 5 ส่วนเซลล์ที่พิมพ์เป็นข้อความพร้อมเครื่องหมาย £ จะไม่ใช่
- วันที่ สเปรดชีตเก็บวันที่เป็นหมายเลขลำดับและแสดงตามรูปแบบที่เลือก ดังนั้น 03/04/2026 กับ 2026-04-03 อาจเป็นวันเดียวกันได้
เครื่องมือเปรียบเทียบอ่านตัวเลขตามที่สเปรดชีตเขียนไว้ และอ่านค่าที่ Excel บันทึกไว้ ไม่ใช่สูตรที่สร้างค่านั้นขึ้นมา ตัวเลขที่เก็บเป็นข้อความจะถูกเทียบเป็นข้อความ ดังนั้น ตรวจชนิดข้อมูลของแต่ละคอลัมน์ ก่อนเชื่อผลการเทียบของคอลัมน์นั้น
คอมพิวเตอร์ยังเก็บทศนิยมในรูปแบบเลขฐานสอง ดังนั้น 0.1 + 0.2 จึงไม่เท่ากับ 0.3 พอดีในภาษาโปรแกรมส่วนใหญ่ การตั้งค่าความคลาดเคลื่อนจะถือว่าตัวเลขเท่ากันเมื่อต่างกันไม่เกินค่าที่คุณกำหนด เช่น 0.01 สำหรับหนึ่งสตางค์
เมื่อไม่มีคีย์ร่วม
ให้ใช้คู่ที่เสถียรที่สุดที่คุณมี เช่น ชื่อกับวันเกิด แล้วตรวจตัวอย่างด้วยตนเอง ถ้าคุณยังเทียบตามตำแหน่งอยู่ ให้อ่านผลว่า "แถวเหล่านี้ต่างกันในตำแหน่งเดียวกัน" ไม่ใช่หลักฐานว่าอะไรเปลี่ยนไป
การรวมและการจับคู่: งานที่เกี่ยวข้อง
การเทียบถามว่าอะไรต่างกันระหว่างสองเวอร์ชันของตารางเดียวกัน ส่วนการรวม (join) ถามว่าสองตารางที่ต่างกันเชื่อมกันอย่างไร VLOOKUP เป็นการรวมที่ง่ายที่สุด โดยค้นหาคีย์ที่ตรงกันในอีกตารางหนึ่งแล้วส่งค่าจากตารางนั้นกลับมา มีกับดักสองอย่างที่ก่อให้เกิดความประหลาดใจส่วนใหญ่ อย่างแรก มันดูเฉพาะคอลัมน์แรกของช่วงข้อมูล ดังนั้นคีย์ต้องอยู่ทางซ้าย อย่างที่สอง มันคืนค่าการจับคู่แรกที่พบ ดังนั้นคีย์ที่ปรากฏสองครั้งจะถูกลดเหลือหนึ่งแถวโดยไม่มีการแจ้งเตือน การไม่ใส่อาร์กิวเมนต์ตัวสุดท้ายยังทำให้มันเปลี่ยนไปใช้การจับคู่แบบโดยประมาณอีกด้วย XLOOKUP ไม่ต้องให้คีย์อยู่ทางซ้าย แต่ก็ยังคืนค่าการจับคู่เพียงหนึ่งรายการต่อการค้นหาหนึ่งครั้ง
รวมสเปรดชีตสองไฟล์ด้วยคอลัมน์ที่ใช้ร่วมกัน ทำงานเดียวกันโดยไม่ต้องใช้สูตร เลือกคีย์ในแต่ละตารางและประเภทการรวม:
- เก็บทุกแถวฝั่งซ้าย เก็บทุกแถวของตารางแรก และเพิ่มคอลัมน์ที่จับคู่ได้ในกรณีที่มี
- เฉพาะที่จับคู่ได้ เก็บเฉพาะแถวที่พบในทั้งสองตาราง
- แถวฝั่งซ้ายที่ไม่มีคู่ แสดงรายการที่ขาดหายไปจากตารางที่สอง ซึ่งมักเป็นผลลัพธ์ที่มีประโยชน์ที่สุด
สำหรับคีย์ที่ซ้ำกัน ค่าที่ตรงกันแรก ทำงานเหมือน VLOOKUP ทุกค่าที่ตรงกัน จะเพิ่มหนึ่งแถวต่อการจับคู่ทุกครั้ง ดังนั้นลูกค้าที่ปรากฏสามครั้งทางขวาจะปรากฏสามครั้งในผลลัพธ์ ให้นับจำนวนแถวก่อนและหลังการรวม และตรวจคีย์ที่ซ้ำกันก่อนเสมอ
ชื่อที่สะกดต่างกัน
คีย์ที่ตรงกันทุกตัวอักษรจะล้มเหลวเมื่อสิ่งเดียวกันถูกเขียนสองแบบ เช่น "Jon Smith" กับ "John Smith" หรือ "Müller" กับ "Mueller" การจับคู่แบบใกล้เคียง จะจับคู่ชื่อแต่ละชื่อในรายการหนึ่งกับชื่อที่ใกล้ที่สุดในอีกรายการพร้อมคะแนน คะแนนคือค่าที่สูงกว่าของการวัดสองแบบ แบบแรกเทียบตัวอักษรตามลำดับและให้คะแนนเมื่อจุดเริ่มต้นเหมือนกัน ซึ่งเหมาะกับ "Smith" กับ "Smyth" แบบที่สองเทียบเป็นคำ ดังนั้นชื่อที่ทุกคำปรากฏในอีกชื่อจะได้ 100 ให้ระวังเมื่อเห็น 100 และชื่อหนึ่งมีคำเพิ่มมา เครื่องมือจะไม่สนใจเครื่องหมายกำกับเสียงและเครื่องหมายวรรคตอน และอาจตัดคำที่บอกประเภทบริษัท เช่น Inc หรือ Ltd ออกไป คะแนนยังเป็นเพียงการประมาณ ดังนั้นให้อ่านคู่ที่จับได้ก่อนยอมรับ
กรณีพิเศษ
- อักขระที่มองไม่เห็น ทำให้คีย์ที่ดูเหมือนกันไม่เท่ากัน ลบอักขระที่มองไม่เห็น หากคีย์ที่ดูเหมือนกันไม่ยอมจับคู่กัน
- เลข 0 นำหน้า จะหายไปเมื่อไฟล์เปิดในสเปรดชีต ดังนั้น "00421" จะไม่ตรงกับเวอร์ชันที่เป็นข้อความอีกต่อไป ให้ทำเครื่องหมาย ข้ามเลขศูนย์นำหน้า ในการรวม เพื่อให้การสะกดทั้งสองแบบนับเป็นคีย์เดียวกัน
- คอลัมน์ที่ซ่อนอยู่ ยังถูกนับในการเทียบ เว้นแต่คุณจะข้ามมัน
ขั้นตอนแบบย่อ
- เลือกคอลัมน์คีย์ในไฟล์ทั้งสอง และตรวจว่าค่าไม่ซ้ำกัน
- เทียบตามคีย์ และเปิดกฎตัวพิมพ์กับช่องว่างเฉพาะเมื่อความต่างนั้นไม่สำคัญ
- ข้ามคอลัมน์ที่เปลี่ยนทุกครั้งที่บันทึก
- ตรวจยอดรวม เมื่อคีย์ไม่ซ้ำกัน ไม่เปลี่ยนแปลง + เปลี่ยนแปลง + ถูกลบ จะเท่ากับจำนวนแถวของไฟล์เก่า และ ไม่เปลี่ยนแปลง + เปลี่ยนแปลง + เพิ่มใหม่ จะเท่ากับจำนวนแถวของไฟล์ใหม่
คำตอบแบบสั้น
ทำไมแถวเดียวที่แทรกเข้ามาทำให้ทุกอย่างถูกทำเครื่องหมายว่าเปลี่ยน?
การเทียบตามตำแหน่งจับคู่แต่ละแถวกับแถวที่อยู่ในลำดับเลขเดียวกัน และการแทรกแถวทำให้ทุกแถวถัดไปเลื่อนลำดับ ให้เทียบโดยใช้คอลัมน์คีย์แทน
ทำไมสองไฟล์ที่มีตัวเลขเหมือนกันจึงแสดงว่ามีการเปลี่ยนแปลง?
ค่าน่าจะถูกเก็บเป็นข้อความ หรือจัดรูปแบบต่างกัน ให้ตรวจชนิดข้อมูลของคอลัมน์
แปลจาก ฉบับภาษาอังกฤษ ด้วยความช่วยเหลือของ AI
ความคิดเห็น
ยังไม่มีความคิดเห็น มาเป็นคนแรกกันเลย


