根据两个工作簿中的匹配数据复制和粘贴数据(多个条件)



我对VBA不是很熟悉,所以请耐心等待。

现在,我有两个 excel 文件:

第一个工作簿包含以下信息:

  1. 单位编号(例如 EQ-21(,
  2. 日期(例如 05/09/2017(,
  3. 次(白班、夜班(,
  4. 姓氏,以及
  5. 名字。

第二个工作簿包含以下信息:

  1. 单位编号(例如 EQ-21(,
  2. 日期(例如 05/09/2017(,
  3. 次(白班、夜班(,

这两个工作表都包含一个月的数据(大约 20,000 个项目(,并且需要匹配所有三个(单元号、日期和班次(条件,然后将相应的名称从第一个工作表复制到第二个工作表。

我所做的大部分工作都是仅基于一个单元格进行匹配,而不是基于这么多数据进行匹配。朝着正确方向迈出的任何一步都会有所帮助。谢谢!

这是一个可能有效的想法。(我没有测试过(

Set range1 = Sheet1.Range("A1:A1500")
Set range2 = Sheet2.Range("A1:A1500")
For Each cell In range1 
For Each cell2 In range2
If cell = cell2 Then
If Sheet1. Range("B"& cell.Row).value   =  Sheet2.Range("B"& cell2.Row).value   And Sheet1.Range("C"& cell.Row).value  =  Sheet2.Range("C"& cell2.Row).value   Then
MsgBox "ok"
Sheet2. Range("D"& cell2.Row).Value = Sheet1. Range("D"& cell.Row).Value
Else
End if 
Else
End if 
Next cell
Next cell

编辑:

使用此行代替 A1500:

Range("A1").Select
start = ActiveCell.Row
Selection.End(xlDown).Select
end = ActiveCell.Row
Set range1 = Sheet1.Range("A1:A"&end)
Set range2 = Sheet2.Range("A1:A"&end)

相关内容

最新更新