【发布时间】:2018-07-18 21:58:35
【问题描述】:
当我运行此代码时,我得到一个“应用程序定义或对象定义的错误”,我不知道如何修复我的代码。我是 VBA 和宏的新手。下面是我的代码。我试图通过将一个值与另一个列表进行比较然后向下移动一行来逐个单元格地进行。
For i = 1 To 133
For k = 1 To 133
Worksheets("Sheet1").Cells(i + 1, 2).FormulaR1C1 = "=IF(ISNUMBER(SEARCH(Cells(i + 1, 2),Sheet2!R[k+1]C[3])),Sheet2!R[k+1]C[5],"""")"
Next k
Next i
【问题讨论】:
-
由于目标单元格在内部循环中没有改变,因此您将在同一单元格中替换公式 133 时间。这不是你的问题,而是提出了另一个问题。
-
您要在第一个单元格中输入什么公式?并且,它应该在下一个单元格中更改为什么。
-
我想将目标单元格中的值与列表进行比较。
-
第一个和第二个单元格中您想要的公式到底是什么,然后我们可以帮助您将其转换为可行的 vba。
-
所以我试图比较第一个单元格左侧的值是否在另一组数据中找到,如果找到,我希望第一个单元格填充来自另一列但与同一行的数据具有匹配数据的单元格。我正在尝试找到一种快速执行此操作的方法,并认为宏是最好的。