Excel的VBA cell.Formula为每一行中的一列(如果我拖了公式)

我怎样才能让这个代码中的G2值模拟它在excel中被拖拽的呢?现在这个公式只testing了G2中每行的插入位置,而我根据每一行代码testing了G2, G3,G4,G5 ..(仅列G)

LASTROW2 = Range("J" & Rows.Count).End(xlUp).Row Set rng2 = Range("J2:J" & LASTROW2) For Each cell In rng2 cell.FormulaR1C1 = "=VLOOKUP(RC[-3],$G:$I,2,FALSE)/VLOOKUP(RC[-8],$A:$C,2,FALSE)" Next cell 

现在我收到一个application defined error与cell.FormulaR1C1,我从来没有debugging过这些错误代码之前

您可以直接将R1C1表示法写入整个范围。 此外,您使用混合的A1R1C1表示法,这将永远不会工作。

 Set rng2 = Range("J2:J" & LASTROW2) rng2.FormulaR1C1 = "=VLOOKUP(RC[-3],C[-4]:C[-1],2,FALSE)/VLOOKUP(RC[-8],C[-9]:C[-7],2,FALSE)"