引用:
|
作者Carcia
想請問一下
有新舊2個EXCEL檔案
裡面都各有1500項目的資料
我要怎麼做才能快速的知道新檔案對照於舊檔案裡的項目,
有新增還是刪除了哪幾個項目?變更的有哪幾個項目?
譬如說:
OLD FILE:
1: AAA 100元
2: BBB 200元
3: CCC 300元
4: DDD 500元
NEW FILE:
1: AAA 100元
2: BBB 200元
3: DDD 400元
4: EEE 500元
當然一個個對是可以知道的,
但1500個項目不是個小數目
有比較有效率的方法嗎?
我知道像LINUX 裡打指令 diff可以幫我找出不一樣的地方
|
1. 半自動法
把新舊兩個資料表放在同個檔案, 互相用Vlookup函數然後手動拖曳右下角的黑十字複製公式, 即可查出兩者有哪些項目不存在於對方的資料表
2. Access SQL法
把新舊兩個資料表匯入Access資料庫, 使用SQL語法 WHERE NOT EXIST 或 WHERE NO IN (SELECT ) 即可找出兩者的差異
3. Excel VBA法
在Excel裡寫VBA, 以雙重迴圈比對新舊資料的差異. 如果要進階一點, 可以先將新舊兩資料各自排序過, 則複雜度會從原本的 N^2 變成 N log(N)
4. Excel VBA SQL法
在Excel VBA裡透過ODBC物件, 把自身Excel當成資料庫, 然後以方法二一樣的語法查詢.