您可以使用下列方法來比較兩個 Microsoft Excel 工作表欄中的資料,並尋找重複項目。
方法 1: 使用工作表公式
-
啟動 Excel。
-
在新的工作表中,輸入下列資料做為範例 (將欄 B 保留空白):
A
B
C
1
1
3
2
2
5
3
3
8
4
4
2
5
5
0
-
在儲存格 B1 中輸入下列公式:
=IF(ISERROR(MATCH(A1,$C$1:$C$5,0)),"",A1) -
選取儲存格 B1 到 B5。
-
選取 [編輯] 群組中的 [填滿],然後選取 [向下]。
重複的數字會顯示在欄 B 中,如下列範例所示:A
B
C
1
1
3
2
2
2
5
3
3
3
8
4
4
2
5
5
5
0
方法 2: 使用 Visual Basic 巨集
警告: Microsoft 僅提供圖例的程式設計範例,不含明示或暗示的擔保。 這包括 (但不限於) 適用于特定目的之可操作性或適用性的暗示擔保。 本文假設您熟悉正在示範的程式設計語言,以及用來建立和進行程式偵錯工具的工具。 Microsoft 支援工程師可以協助說明特定程式的功能。 不過,他們將不會修改這些範例以提供新增功能或建構符合您特定需求的程式。
若要使用 Visual Basic 巨集來比較兩欄的資料,請使用下列範例中的步驟:
-
啟動 Excel。
-
按 ALT+F11 以啟動 Visual Basic 編輯器。
-
在 [插入] 功能表上選取 [模組]。
-
在模組工作表中輸入下列程式碼:
Sub Find_Matches() Dim CompareRange As Variant, x As Variant, y As Variant ' Set CompareRange equal to the range to which you will ' compare the selection. Set CompareRange = Range("C1:C5") ' NOTE: If the compare range is located on another workbook ' or worksheet, use the following syntax. ' Set CompareRange = Workbooks("Book2"). _ ' Worksheets("Sheet2").Range("C1:C5") ' ' Loop through each cell in the selection and compare it to ' each cell in CompareRange. For Each x In Selection For Each y In CompareRange If x = y Then x.Offset(0, 1) = x Next y Next x End Sub
-
按 ALT+F11 返回 Excel。
-
輸入下列資料做為範例 (將欄 B 保留空白):
A
B
C
1
1
3
2
2
5
3
3
8
4
4
2
5
5
0
-
-
選取儲存格 A1 到 A5。
-
選取 [開發人員] 索引標籤,然後選取 [程序代碼] 群組中的 [巨集]。
附註: 如果您看不到 [開發人員] 索引標籤,您可能需要將其開啟。 若要這樣做,請選取 [檔案] > [選項] > [自訂功能區],然後選取右側自訂方塊中的 [開發人員] 索引標籤。
-
按一下 Find_Matches,然後按一下 [執行]。
重複的數字會顯示在欄 B 中。符合的數字會放在第一欄旁邊,如下圖所示:A
B
C
1
1
3
2
2
2
5
3
3
3
8
4
4
2
5
5
5
0