excle表格,检查A列单元格数据B列是否存在,如果存在则取C列数据到D列
时间: 2024-04-10 07:27:25 浏览: 83
取Excel表格有数据单元格的起讫行、列.rar
您可以使用以下的VBA代码来实现您的需求:
```vba
Sub CheckExistAndCopyData()
Dim lastRow As Long
Dim cellA As Range
Dim cellB As Range
' 获取A列和B列的最后一行
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
' 遍历A列的每个单元格
For Each cellA In Range("A1:A" & lastRow)
' 在B列中查找与当前A列单元格相匹配的值
Set cellB = Range("B:B").Find(What:=cellA.Value, LookIn:=xlValues, LookAt:=xlWhole)
' 如果找到了匹配的值,则将C列对应单元格的值复制到D列
If Not cellB Is Nothing Then
cellA.Offset(0, 2).Copy Destination:=cellA.Offset(0, 3)
End If
Next cellA
End Sub
```
将以上代码复制到Excel的VBA编辑器中(按下Alt+F11打开),然后运行`CheckExistAndCopyData`子程序。它将遍历A列的每个单元格,查找是否在B列中存在相同的值,如果存在,则将C列对应单元格的值复制到D列。
请注意,此代码假设数据从第一行开始,并且A、B、C、D列连续,如果您的数据结构不同,需要根据实际情况进行调整。
阅读全文