vba - 通过单元格错误循环公式的语法
问题描述
当我运行此代码时,我得到一个“应用程序定义或对象定义的错误”,我不知道如何修复我的代码。我是 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
解决方案
未经测试:
For i = 1 To 133
For k = 1 To 133
Worksheets("Sheet1").Cells(i + 1, 2).FormulaR1C1 = _
"=IF(ISNUMBER(SEARCH(" & Cells(i + 1, 2).Address(False, False, xlR1C1) & _
",Sheet2!R[" & (k+1) & "]C[3])),Sheet2!R[" & (k+1) & "]C[5],"""")"
Next k
Next i
推荐阅读
- mongodb - 为 TypeORM MongoDB ObjectIdColumns 传入未定义时禁用 ID 的自动生成
- angular - 通过比较 id 选择选项
- highcharts - Highcharts风玫瑰增加面吧
- javascript - 同时解构数组及其属性
- linkedin - 如何通过 API 访问 LinkedIn 事件?
- excel - 为整行着色不适用于 VBA
- python - 如何从 Python regexp 中的可选组中获取数据?
- ios - 如何以编程方式设置过渡样式并连接到情节提要 UIViewController
- javascript - 匹配日期时无法理解 Javascript 中的正则表达式
- docker - 无法通过 ssh 重启 apache