【发布时间】:2020-08-06 02:08:33
【问题描述】:
我一直坚持编写 VBA 代码,这将使我能够在 V 列中插入以下公式(从 V2 开始到最后一行,因为它是一个动态范围)如果在同一张表的其他列中满足 3 个 AND 条件.我尝试使用宏并插入它要求的公式 R1C1,但它给了我一个语法错误。另外,我宁愿使用 VBA 代码,因为它将在具有多个工作表的非常大的数据库上运行,并且范围会随时间变化.但是,所有格式、标题名称和列号将始终保持不变。
所以我的条件是:
如果 M 列中的单元格有值,且 N 列不等于 5,且 T 列为空,则将此公式插入该行的 V 列:
列 G * (0.19) 如果满足相同条件,则在 X 列中插入此公式:
V列/Y列以及O列中的这个公式:
第 M 列/第 X 列如果 3 个条件中的任何一个不满足,则不执行任何操作并移至下一行并继续
对工作表“CABC”和工作表“CXYZ”中的每一行执行此操作(每个工作表的行数更改,因此我需要最后一行计数)此外,有时在新工作簿中,这些工作表中的一个或两个不会在那里,所以我需要一个错误处理程序继续前进,以防它找不到工作表。
我会给出我的代码,但是我真的没有,因为我在这里或在 youtube 上找到的代码都没有为我工作:(
这是适用于我的第 V 列的 IF AND 公式,但是当我将其插入 VBA 时,它不起作用(不能作为 .range.formula 或录制的宏中的 .range.formulaR1C1 工作) 公式:
"=IF(AND(M2>0,NOT(N2=5),T2=""),(G2*(0.07/(1+(0.05+0.07)))),"")"
非常感谢!!
【问题讨论】:
-
您需要在 VBA 中将引号加倍。
-
column M/ Column Xformula : 哪一列是公式?
标签: excel vba if-statement excel-formula nested-loops