Excel:如何让公式相对于每组新的公式组更改?

时间:2017-08-24 12:46:07

标签: vba excel-vba excel-2010 excel

我在Excel拖动中填写公式时出现问题。我有行中的公式,这样每行都有一个不同的公式,引用其他工作表上的行/单元格。

让我们在Sheet 1上说,单元格中的公式C2:C9从单元格C4,G4,H4等中提取工作表2中的数据。如果我突出显示工作表1单元格C2:C9然后单击以拖动在单元格C10:C17中形成另一组公式,内部公式将其引用更改为8行,这样如果Sheet 1 C2从Sheet 2 G4中提取数据,则Sheet 1 C10中的下一个类似公式最终从工作表2中提取数据G12。

这是我遇到的问题;而不是更改为引用每8行的公式,我怎么能使它只改变1行而不是?或者,对于拖动和填充的每个新公式组,将这些公式中的引用仅更改为1行。如果仍然存在混淆,请考虑单元格C2:C9是否合并为单个单元格。即使你拖下那个公式,内部公式仍会改变8行,尽管每次只形成1个单元格。

据我所知,没有内置的Excel函数可以做到这一点,我相信唯一的方法是使用一些VBA代码,但我不熟悉VBA语言。由于这是一次性的事情,VBA代码可以应用这种行格式化'当我点击并拖动时,或者VBA代码可以自动为我填充单元格。

1 个答案:

答案 0 :(得分:0)

使用INDEX()和一些数学:

在C2中它会是这样的:

=INDEX(Sheet2!C:C,(ROW(1:1)-1)/8+4)

其中8是公式的间距,而4是要返回的第一行。

C2将返回Sheet2!C4,C10将是Sheet2!C5

使用此选项可以修改其他公式以返回所需的模式。