![Excel 比较表查找值并替换值,同一行 - 不同单元格](https://linux22.com/image/1581285/Excel%20%E6%AF%94%E8%BE%83%E8%A1%A8%E6%9F%A5%E6%89%BE%E5%80%BC%E5%B9%B6%E6%9B%BF%E6%8D%A2%E5%80%BC%EF%BC%8C%E5%90%8C%E4%B8%80%E8%A1%8C%20-%20%E4%B8%8D%E5%90%8C%E5%8D%95%E5%85%83%E6%A0%BC.png)
有没有办法,例如:值 123 位于 Sheet1 上的单元格 A1 中,我需要在 Sheet2 上找到值 123,保留该值,但根据找到的第 123 行用设定值替换另一个单元格。
希望它可以像这样工作:
123(A1 sheet1) 在 Sheet2 的 H13 单元格中找到 123,将 Sheet2 上的 A13 替换为 ABC
456(A2 sheet1)在 sheet2 的 H28 单元格中找到 456,将 sheet2 上的 A28 替换为 ABC
非常感谢!
答案1
类似Sheet1
:
和Sheet2
类似:
运行此 VBA 宏:
Sub EasyAsABC()
Dim i As Long, N As Long, FoundIt As Range
Dim s1 As Worksheet, s2 As Worksheet
Set s1 = Sheets("Sheet1")
Set s2 = Sheets("Sheet2")
N = s1.Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To N
Set FoundIt = s2.Range("H:H").Find(what:=s1.Cells(i, 1).Value, after:=s2.Range("H1"), lookat:=xlWhole)
If FoundIt Is Nothing Then
Else
s2.Cells(FoundIt.Row, 1).Value = "ABC"
End If
Next i
End Sub
会产生: