Excel VBA – 循环填充范围与公式引用其他范围

我有两个工作表(sht1,sht2)都具有相似的大小范围,我需要参考公式从sht2到sth1。

例如:在sht2上添加公式到范围I10:链接到sht1的K11范围B2:在sht2上的D3下一个添加公式到范围I20:K21链接到sht1范围B6:D7等等,只要有范围

有几百个这样的范围,但是在两张纸上都有彼此分开的距离,在这些范围之间还有其他东西,所以我不能只填充整张纸。 sht1上的距离和sht2之间的距离是不变的,只是彼此不同而已。

使用公式sht1填充sht2范围的最佳方法是什么? 我应该只使用单元格中的整数,然后通过已知的距离之间的循环移动整数?

与我的评论相反,使用Range.Offset属性可以更容易地找出交错背后的math问题。 使用.Offset提供起点, Range.Resize属性重塑目标区域。

 Sub staggerLink() Dim r As Long, sht1 As Worksheet Set sht1 = Worksheets("sht1") With Worksheets("sht2") For r = 0 To 99 .Cells(10, 9).Resize(2, 3).Offset(r * 10, 0).Formula = _ Chr(61) & sht1.Cells(2, 2).Offset(r * 4, 0).Address(False, False, external:=True) Next r End With End Sub 

除了“数百个这样的范围”之外,您没有为您的项目提供任何范围,所以我只是跑了100次。 另外,除了必须“链接到sht1”以外,你没有提供样本,甚至没有描述你的“公式”,这是我提供的公式。