vba 比较 不同表的两个单元格的值是否相同
时间: 2023-10-19 07:03:17 浏览: 249
Excel表格中vba宏按条件拆分两个单元格中的数字.docx
在VBA中,可以使用Range对象来比较不同表的两个单元格的值是否相同。下面是一个示例代码:
```vba
Sub CompareCells()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim cell1 As Range
Dim cell2 As Range
' 设置要比较的两个表
Set ws1 = ThisWorkbook.Worksheets("Sheet1")
Set ws2 = ThisWorkbook.Worksheets("Sheet2")
' 遍历表1的特定范围内的单元格
For Each cell1 In ws1.Range("A1:A10")
' 获取相应位置的表2单元格
Set cell2 = ws2.Range(cell1.Address)
' 比较两个单元格的值是否相同
If cell1.Value = cell2.Value Then
' 如果值相同,则在表1对应的B列写入"相同"
ws1.Range("B" & cell1.Row).Value = "相同"
Else
' 如果值不同,则在表1对应的B列写入"不同"
ws1.Range("B" & cell1.Row).Value = "不同"
End If
Next cell1
End Sub
```
以上代码假设要比较的两个单元格范围分别为Sheet1的A1:A10和Sheet2的相同范围。在比较过程中,对于每个在范围内的表1单元格,都找到了在相同位置上的表2单元格,并比较它们的值是否相同。根据比较结果,将相应的"相同"或"不同"写入到表1的相应位置的B列中。
注意:使用以上代码前请确保已在Excel文件中创建了Sheet1和Sheet2,并将要比较的数据放入指定的范围内。
阅读全文