首页 > 解决方案 > 如何使用动态开始和结束单元格在 excel 中创建动态范围函数?

问题描述

我从财务报表信息数据库中导出。它仅包括非零行。我正在尝试使用 INDEX(MATCH) 来复制信息并计算关键数据、KPI 等。到目前为止没有问题。

问题是资产负债表包含多个具有相同文本的行,例如“其他应收款”,因此基本 INDEX(MATCH) 将始终采用第一个值。我无法通过计算发生次数来解决这个问题,例如“长期应收账款”缺少“其他应收账款”,那么该行就丢失了。

我尝试的解决方案是在 INDEX(Match) 'array' 部分(第一个参数)中使用 INDEX(MATCH) 函数。如果只有数组的端点是动态的,它就可以正常工作,但在起始值也是动态的时候也可以工作。这个想法是通过搜索从“短期应收款”开始到“短期应收款总额”结束的数组来隔离“其他应收款”,例如短期应收款。

总而言之,问题很简单:如何编写具有动态开始值和结束值的数组?

标签: excelrange

解决方案


https://exceljet.net/formula/get-address-of-lookup-result

您可以获得起始单元格匹配条件(短期应收账款)和结束单元格匹配条件(短期应收账款总额)的地址,从而可以创建动态范围。

动态获取起始单元格后,您可以使用间接选择动态范围(因为以下结果将是一个字符串)和偏移量。

参考上面相同的链接以下是H11中的公式 =CELL("address",INDEX(C:C,MATCH("Short Term Receivables",C:C,0),1))&":"&CELL("地址",INDEX(C:C,MATCH("短期应收账款总额",C:C,0),1))

在此处输入图像描述


推荐阅读