我需要一个 VBA 宏来执行以下操作:
我有两张工作表,在工作表 1 的 A 列中有一个包含零件编号的列表。在工作表 2 的 A 列中,我有一列可以输入零件编号。我需要的是,当在工作表 2 的 A 列中输入一个数字时,会检查工作表 1 的 A 列,以确保在工作表 2 上输入的零件编号列在工作表 1 的 A 列中的某个位置?????
答案1
我建议您使用以下 VBA 代码比较两个工作表,在定义的数据范围内查找重复条目。
让我先解释一下数据情况。
工作表 1 的数据在范围 A5:A10 中,而工作表 2 的数据在范围 A10:A15 中。
如果工作表 2 的范围 A10:A15 等于工作表 1 的范围 A5:A10,则会出现消息。
Private Sub CommandButton1_Click()
Option Explicit
Dim lngMyRow As Long
Dim blnAllMatch As Boolean
Application.ScreenUpdating = False
For lngMyRow = 1 To 6
If Sheets("Sheet1").Range("A" & lngMyRow + 4) = Sheets("Sheet2").Range("A" & lngMyRow + 9) Then
MsgBox "Data is simillar.", vbExclamation
blnAllMatch = False
Exit For
Else
blnAllMatch = True
End If
Next lngMyRow
If blnAllMatch = True Then
MsgBox "Data is different !!", vbInformation
End If
Application.ScreenUpdating = True
End Sub
注意: 您需要根据数据范围更改 VBA 代码第 6 行和第 7 行中的值。此代码也可用作“Worksheet_Change 事件”。
笔记, 在我将此代码发布到这里之前,我已经对其进行了测试。
希望这对你有帮助。