Excel 如何设置动态范围直到空单元格命中

Excel 如何设置动态范围直到空单元格命中,excel,excel-formula,Excel,Excel Formula,这对很多人来说可能很容易,但我需要解决以下一个问题 我有一个从D列到D列的电子表格,但行数的范围可能会有所不同。我想选择从D4到D列第一个空白单元格范围内的所有单元格,因此如果数据在第8行结束,它将停止选择D8单元格的行 我试图使它动态,但目前我只能限制我的formel到D10 我的初始形式如下,D8值应该是动态的: =IF( COUNTIF(D4:D8;"Completion delayed")>0;"Completion delayed";IF( COUNTIF(D4:D8;"

这对很多人来说可能很容易,但我需要解决以下一个问题

我有一个从D列到D列的电子表格,但行数的范围可能会有所不同。我想选择从D4到D列第一个空白单元格范围内的所有单元格,因此如果数据在第8行结束,它将停止选择D8单元格的行

我试图使它动态,但目前我只能限制我的formel到D10

我的初始形式如下,D8值应该是动态的:

=IF(
  COUNTIF(D4:D8;"Completion delayed")>0;"Completion delayed";IF(
  COUNTIF(D4:D8;"Start delayed")>0;"Start delayed";IF(
  COUNTIF(D4:D8;"In progress")>0;"In progress";IF(
  AND(COUNTIF(D4:D8;"Not started")>0;COUNTIF(D4:D8;"Done")>0);"In progress";IF(
  COUNTIF(D4:D8;"Not started")>0;"Not started";IF(
  COUNTIF(D4:D8;"Done")>0;"Done";"N/A"
))))))

有人能帮我解决这个问题吗?

您可以将其用作数组公式,使用CTRL+SHIFT+ENTER输入

=IF(COUNTIF(间接(“D4:D”)和MAX((D:D)”)*(行(D:D)),“Abort”)>0,“Abort”,“”)

为什么不干脆
D:D
让它骑着呢。或者在D的第一个空白行下面有更多的数据吗?没错。从d4到d10或d11或d12等(数字会有所不同)都有数据。然后将有一个空白单元格,我将在这个空白单元格(例如d13)之后使用相同的公式到下一个空白单元格,这意味着我将使用类似的公式定义从所选单元格到下一个空白单元格的范围。需要样本数据和预期结果。VBA是选项吗?遗憾的是,不,我需要公式谢谢回答。如何将其添加到我在问题中编辑的以下公式中?
=IF(COUNTIF(INDIRECT("D4:D"&MAX((D:D<>"")*(ROW(D:D)))),"Abort")>0,"Abort","")