MAX函数在2个运行时确定的范围内,可能包含#NV

我需要一些想法来改善我的概念,然后才能防止这个问题变成一个英里长的只写公式。

我试图做的是,以graphics方式,是这样的:

例

我有两行有4个必须的单元格(直线)和4个可选单元格(虚线),我需要运行一个MAX函数。 任何数量的X都可能包含#NV (为了图表的目的,这些是故意的 )。

首先,我需要确定实际的范围。 目前这是通过INDIRECT(..) 。 根据当前季度,它将在行中select5到8个单元格的范围。

 INDIRECT("Q5:" & CHAR(CODE("T") + VarQuarter) & 5) 

之后,在该范围上执行MAX ,然后在两个范围的先前计算的MAX结果上执行MAX 。 如果出现错误(由于#NV ),则需要省略该结果,否则将使用两个结果。 如果两个结果都是错误的,那么我会很好,因为这个错误会在以后被捕获。

我唯一的想法是IFERROR和多余的MAX语句IFERROR长连接…


任何改进这两个步骤的想法? 我被明确告知在工作表上而不是在代码中执行这一操作,以便于其他人更容易维护,所以除非是绝对不可能的,否则这将不得不做。

假设第一行在Q5开始,第二行在Q6开始尝试

 =MAX(IFERROR(MAX(OFFSET(Q5,0,0,1,varQuarter+4)),0),IFERROR(MAX(OFFSET(Q6,0,0,1,varQuarter+4)),0))