2014-05-20 356 views
-2

我有两个电子表格,第一个是主电话列表,第二个是用户电话列表绑定到电话号码,我想写一个for循环,将找到匹配然后将用户名复制到主列表上的空列以标识所有可用数字。我不确定我是否正确地选择了它。任何帮助是极大的赞赏。VBA“For”循环不工作

Sub temp() 
Dim rCell As Range 
Dim rRng As Range 
Set x = Sheet4.Range("A1:A1300") 
For i = 2 To 500 
If Worksheets("Sheet3").Cells(i, 1) = Worksheets("Sheet4").Cells(x, 1) Then 
    Worksheets("Sheet4").Cells(x, 3) = Worksheets("Sheet3").Cells(i, 4) 
End If 
Next i 

End Sub 
+1

以何种方式它出错了吗? –

+3

This ** Worksheets(“Sheet4”)。Cells(x,1)**对我来说似乎很奇怪!特别是** x ** –

+0

X似乎没有被定义。您应该在代码模块中添加Option Explicit。 – RubberDuck

回答

1

我认为你想要做的事情可以通过VLOOKUP工作表公式来处理。

在你试图填充,输入列的单元格,

=VLOOKUP([cell containing phone number to lookup],[range to lookup on],[column number of result beginning from 1],FALSE)

所以,我想你想,在工作表Sheet 3 D2单元格,

=VLOOKUP(A2,Sheet4!$A$1:$C$1300,3,False)

+0

我甚至没有想过尝试一个vlookup – Bergie