2017-05-29 102 views
0

对于excel,我对于VBA来说相当新。我想创建一个宏来比较两个单独的工作簿,然后显示它们之间的差异。更多细节我会说,唯一需要比较的是两个工作簿中的列A.任何意见将不胜感激。用于比较VBA Excel的工作簿的宏

+0

参考https://stackoverflow.com/documentation/excel-vba/777/getting-started-with-excel-vba#t=201705300004209262522 – YowE3K

+0

的Excel 2013+配备了电子表格比较工具https://开头support.office.com/en-us/article/Basic-tasks-in-Spreadsheet-Compare-f2b20af8-a6d3-4780-8011-f15b3229f5d8 – Slai

回答

0

这将做你想要的!

Public Sub CompareSheets() 
Dim ws1 As Worksheet, ws2 As Worksheet 
Dim cell As Range, rng As Range 
Set ws1 = Workbooks.Open("C:\your_path_here\Book1.xlsx").Sheets(1) 
Set ws2 = Workbooks.Open("C:\your_path_here\Book2.xlsx").Sheets(1) 
Set rng = ws1.Range("A1:A20") 
For Each cell In rng 
    Celladdress = cell.Address 
    If cell <> ws2.Range(Celladdress) Then 
     cell.Interior.Color = vbYellow 
     ws2.Range(Celladdress).Interior.Color = vbYellow 
    End If 
Next cell 
End Sub 
+0

这只是强调了每个工作簿的列电子表格1,但是,对吗?我运行它时不会比较纸张。 – Matthew