|
楼主 |
发表于 2023-3-3 13:01
|
显示全部楼层
本帖最后由 zscaa 于 2023-3-3 15:37 编辑
额,传错文件了代码如下,附件已经更新了,请问该怎么实现?
Sub 匹配工单()
Dim inh As Worksheet
Dim oh As Worksheet
Dim inRn, outRn
Dim inStyCol, inWorkCol, inStyRow
Dim outStyRow, outWorkCol
Dim i
Dim icount
Dim str
Set inh = Sheets("Sheet1")
Set oh = Sheets("Sheet2")
Set outRn = oh.Cells.Find(what:="工单", LookIn:=xlValues, lookat:=xlPart)
outWorkCol = outRn.Column
Set inRn = inh.Cells.Find(what:="产品型号", LookIn:=xlValues, lookat:=xlPart)
inStyCol = inRn.Column
inStyRow = inRn.Row
Set outRn = inh.Cells.Find(what:="工单", LookIn:=xlValues, lookat:=xlPart)
inWorkCol = outRn.Column
For i = inStyRow + 1 To inh.Range("a65526").End(xlUp).Row
str = inh.Cells(i, inStyCol)
icount = Application.WorksheetFunction.CountIf(oh.Cells, str)
If icount > 0 Then
Set outRn = oh.Cells.Find(what:=str, LookIn:=xlValues, lookat:=xlPart)
oh.Cells(outRn.Row, outWorkCol) = inh.Cells(i, inWorkCol)
End If
Next i
End Sub
|
|