【问题标题】:VBA "For" loop not workingVBA“For”循环不起作用
【发布时间】:2014-05-20 13:30:23
【问题描述】:

我有两个电子表格,第一个是主电话列表,第二个是与电话号码相关的姓名的用户电话列表,我正在尝试编写一个 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

【问题讨论】:

  • 哪里出了问题?
  • 这个 Worksheets("Sheet4").Cells(x, 1) 对我来说似乎很奇怪!尤其是 x
  • X 似乎没有定义。您应该将Option Explicit 添加到您的代码模块中。
  • @ckuhn203 x 实际上设置为一个范围。它没有声明(如您所见),但至少已分配
  • 我错过了@mehow。我很抱歉。

标签: excel vba loops for-loop


【解决方案1】:

我认为您尝试做的事情可以通过 VLOOKUP 工作表公式来处理。

在您尝试填充的列的单元格中,输入,

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

所以,我想你想要在 Sheet3 单元格 D2 中,

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

【讨论】:

  • 我什至没想过要尝试 vlookup
猜你喜欢
  • 2018-04-22
  • 2018-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-13
  • 2013-12-31
  • 2016-05-13
  • 2018-09-09
相关资源
最近更新 更多