2016-07-27 89 views
0

我需要編寫宏以幫助比較同一excel書上的excel,sheet1和sheet2中的兩個工作表,並顯示工作表3上兩個工作表之間的所有差異。 我的標題在sheet1和sheet2之間始終相同,但兩張表中的信息可能會有所不同。 我包括標題,這將是雙方的張:我這個出生掙扎工資號姓名工資會員用於匹配兩組數據的宏

集團

ID號碼日期

。所以請延長你的幫助手 謝謝。

+2

我們在這裏幫助你解決你的問題。而不是完全回答併爲您編寫代碼。請讓我們知道您爲此做了哪些努力。 – Nehal

+0

嘗試使用'match'或'countif'功能。這不需要VBA。或者你可以購買一個爲你做這個的插件。 (更多閱讀:[Google](https://www.google.com)) – vacip

回答

0

假定「i」是在Sheet行和「M」的數目被Sheet 2中的行並在每個片材7頁的標題的數量,則這是其中錯配在表Sheet 3

這裏註冊的溶液在Sheet1中的ID號與在Sheet2的ID號進行比較,如果存在的話,那麼他們相比和不匹配狀況在工作表Sheet 3中的標題的相同順序

Sub Mismatch() 

Dim temp3 As Integer 
temp3 = 1 

Dim array1(7), array2(7), array3(7) As Variant 

For i = 2 To 6 
Worksheets("Sheet1").Activate 
For temp = 1 To 7 
    array1(temp) = Cells(i, temp).Value 
Next temp 

Worksheets("Sheet2").Activate 

For m = 2 To 6 
    If Cells(m, 1).Value = array1(1) Then 
     For n = 1 To 7 
      For temp2 = 1 To 7 
       array2(temp2) = Cells(m, temp2).Value 
      Next temp2 
      Worksheets("Sheet3").Activate 
      temp3 = temp3 + 1 

      Cells(temp3, 1).Value = array1(1) 

      For temp4 = 2 To 7 
       If array1(temp4) <> array2(temp4) Then 
        Cells(temp3, temp4).Value = "mismatch" 
       End If 
      Next temp4 

      GoTo JumpToHere 

     Next n 
    End If 
Next m 
JumpToHere: 
Next i 

End Sub 

我希望這有助於