2017-08-31 161 views
0

我正在使用高级过滤器,其中基于选择,我得到一个数据列表(可以是大量的数据)。控制公式以确保所有过滤的数据是正确的

在数据列表中,我在电子邮件地址栏中填入“AI”字段18,然后记录数据。由于此电子邮件列表用于通知,因此我需要确保所有内容都正确,并且我没有N/A或错误。我有这个我现在使用的公式:

{= IF(SUM(IF(ISNA(AI18:AI29),1,IF(AI18:AI29 =“”,1,0)))> 0 ,“错误列AI”,“是”)}

上面的公式做需要,但它停止在单元格29.我不想手动更改公式的长度。我一直在试图将MAX整合进去,但它似乎并不奏效。

问题:我需要此公式中的29根据高级过滤器的结果上升或下降。

回答

0

你需要做的是指定一个变量范围。这可以通过OFFSET功能完成。如果您将范围AI18:AI29替换为OFFSET(AI18,0,0,FILTER_RESULT,1),则应该获得所需的内容。其中FILTER_RESULT是该范围的高度。在29的情况下,它将是11的高度。

OFFSET(
    reference cell: The base cell to refer to. 
    rows: The number of rows, up or down, that you want the upper-left cell to refer to. 
    cols: The number of columns, to the left or right, that you want the upper-left cell of the result to refer to. 
    height: The height of the range you want 
    width: The width of the range you want 
+0

我看到你来自哪里,但它不工作。我试过=(IF(SUM(IF(ISNA(OFFSET(AI18,0,0,FILTER_RESULT,1)),1,IF(OFFSET(AI18,0,0,FILTER_RESULT,1)=“”,1,0) ))> 0,“错误列AI”,“是”)) – Abigal

+0

这可能是因为我正在使用高级过滤器。你的公式建议上面仍然在单元格AI18上。我现在试图找到一种方法。 – Abigal

+0

从你的问题,我认为你只想要18改变。很容易让基地也改变。例如,你可以在AI1开始,然后让行参数指示范围从哪里开始。 –

相关问题