2012-11-11 125 views
1

我对我的excel知识有一个小问题,我希望有人能帮我一把。这是情况。我有一个小模式,让我们从A1到D16说。所有这些细胞有不同的公式中:将n行添加到公式中包含的单元格

类型的公式是

A1='Sheet2'!C95 

比方说

而且

D16='Sheet2'!Cxx 

我想我会选择E1有行我在A1 +91行有的公式可以这么说,结果我必须是

='Sheet2'!C186 

(指细胞91后添加91行到相同的列(C))

同为H16

H16='Sheet2'!Cxx+91 
+1

问题有一堆错别字,这是很难理解,你能澄清更多信息,请的价值? – Greeso

+0

我会尝试在A1中做到这一点我有A1 ='Sheet2'!C95所以行E1我蚂蚁有E1 ='Sheet2'!C186(95 + 91)相同A2:D16公式相同=' Sheet2'!Cxxx(xx表示来自'Sheet2'的C列中的数字每次都不相同) 所以如果D16 ='Sheet2'!Cxx H16将是H16'Sheet2'!Cxx +91行这有帮助吗? – user1815474

回答

0

这里的一个UDF,可以实现这一目标:

Function linkedCellOffset(r As Range, row As Long, column As Long) 
    Application.Volatile 
    linkedCellOffset = Range(Mid(r.Formula, 2)).Offset(row, column).Value 
End Function 

示例用法: 将E1的公式设置为:=linkedCellOffset(A1,91,0)

结果:假设你的A1公式=Sheet2!C95,E1显示Sheet2!C186

+0

谢谢你 你能用一句话来解释linkedcelloffset的含义吗? – user1815474

+0

我不明白...这是用户定义的函数。含义是代码。它返回第二个和第三个参数传递范围偏移公式所指示范围的值。我认为代码比我能想到的任何表达方式都更直接。 –

相关问题