我想比较2个不同工作表中2列的值,如果值相等,则第一个工作表中的相应单元格将在第二个工作表的相应单元格中采用相同的值。所以我使用了循环函数,但问题是我无法在第一张表中的函数中定义和使用第二张表。
我将非常感谢指导我解决这个问题。
您将在下面找到我想要使用的功能:
Sub Test_V01()
Dim i As Integer
Dim j As Integer
Dim Bouira As Excel.Worksheet
For j = 3 To 100
For i = 3 To 120
If Cells(j, 3) = Bouira!Cells(i, 30) Then
Cells(j, 12) = Bouira!Cells(i, 31)
End If
Next i
Next j
End Sub
答案 0 :(得分:2)
分别用Cells(j, 3)
和Cells(j, 12)
替换Me.Cells(j, 3)
和Me.Cells(j, 12)
,以确保始终使用此工作表中的单元格,而不是来自活动单元格的单元格片材。
将Bouira!Cells
替换为Bouira.Cells
。工作表中没有集合,其元素的字面值为Cells
。
在进入循环之前分配对Bouira
的引用:
Set Bouira = ThisWorkbook.Worksheets("Sheet name")
答案 1 :(得分:1)
这将设置对工作表Bouira
的引用:
Sub Test_V01()
Dim i As Integer, j As Integer, Bouira As Worksheet
Set Bouira = Worksheets("Bouira")
For j = 3 To 100
For i = 3 To 120
If Cells(j, 3) = Bouira.Cells(i, 30) Then
Cells(j, 12) = Bouira.Cells(i, 31)
End If
Next i
Next j
End Sub