我有2個excel文件,每個文件都有很多數據。數據在兩個文件中的結構完全相同,但數據可能因兩個不同時間的數據而改變。尋找細胞變化 - Excel文件
基本上我想找到一些方法來自動比較兩個文件的每個單元格中的值,並突出顯示已更改文件#2中的值的單元格。
請分享您的想法!
實施例:
文件1:
一個/ 1/2
文件2:
一個/ 1/8
(/ - 表示新小區)
我有2個excel文件,每個文件都有很多數據。數據在兩個文件中的結構完全相同,但數據可能因兩個不同時間的數據而改變。尋找細胞變化 - Excel文件
基本上我想找到一些方法來自動比較兩個文件的每個單元格中的值,並突出顯示已更改文件#2中的值的單元格。
請分享您的想法!
實施例:
文件1:
一個/ 1/2
文件2:
一個/ 1/8
(/ - 表示新小區)
這可能不是儘管有效的方式(可以在幾秒鐘內處理25k個單元格),但它不僅僅是簡單地彌補了它的不足。
這將查看Sheet2中的每個單元格,並將其與您指定的文件Sheet1中相同地址的單元格中的值進行比較。如果不同,Sheet2中的單元格會突出顯示爲黃色。
Sub FindDifferences()
Application.ScreenUpdating = False
Dim cell As Range
Dim wkb1 As Workbook
Dim wks1 As Worksheet
Set wkb1 = Workbooks.Open(Filename:="C:\MyBook.xls")
Set wks1 = wkb1.Worksheets("Sheet1")
For Each cell In ThisWorkbook.Sheets("Sheet2").UsedRange
If cell.Value <> wks1.Cells(cell.Row, cell.Column).Value Then
cell.Interior.Color = vbYellow
End If
Next
wkb1.Close
Application.ScreenUpdating = True
End Sub
注意: 你可以輕鬆地定製這種通過簡單的拆卸wkb1和WKS1變量和更改wks1.Cells...
到Sheets("Sheet1").Cells
比較在同一個文件2張......
您可以使用此online website - xlcomparator.net(點擊右上角的國旗f或英文版)。
或者試試這個軟件:http://www.formulasoft.com/excel-compare.html
或者嘗試這種宏(即檢查第一列),並根據需要進行修改:
sub compare()
Application.ScreenUpdating = False
Dim coll1 As New Collection, coll2 As New Collection
Dim cell1 As Range, cell2 As Range
Dim Element1 As Object, Element2 As Object
Workbooks("workbook1.xls").Activate
For Each Cellule1 In Range("a:a")
coll1.Add cell1
Next Cellule1
Workbooks("workbook2.xls").Activate
For Each cell2 In Range("a:a")
coll2.Add cell2
Next cell2
For Each Element1 In coll1
For Each Element2 In coll2
If Element1 <> Element2 Then
Element1.Font.Color = vbRed
Else
Element1.Font.Color = vbBlack
Exit For
End If
Next Element2
Next Element1
Application.ScreenUpdating = True
end sub
另外兩個選項:
這是我最喜歡的工具,因爲它也提供了一個行和列對齊選項,以確保這兩個板通過行和列indentically提出,運行比較前輸出代碼以突出顯示任何差異
是否只有你想要比較的值?不格式,字體大小,顏色等?另外,所有的數據都在一張或多張紙上,什麼是「每張紙上的大量數據」? –
相關問題:http://stackoverflow.com/questions/114698/how-do-i-diff-two-spreadsheets – barrowc
只想比較值,但希望輸出突出顯示不同的值。我正在比較的兩個數據集有兩張不同的表格。 – Adam