背景:我的一个客户将一栋建筑物租给不同的公司,并读取电表和水表的读数,以便根据使用情况向公司收费。
然后创建发票,指定发票的开始和结束月份,以便从选定月份的相应列中检索读数。
我在Excel中有以下公式:
{=IFERROR(INDEX(Invoice_Sheet_Readings, SMALL(IF(Invoice_Sheet_Readings=$D$63, ROW(Invoice_Sheet_Readings)-25),ROWS($G$68:G68)), MATCH($D$63,$F35:$CC35,0)+1), "")}
在哪里:
Invoice_Sheet_Readings
是从中检查和检索数据的单元格范围(图像中的灰色区域)$D$63
是月份和年份(从下拉列表中选择 - 例如 2017 年 12 月)- 图像中的深绿色区域
它的作用是 - 它将月份和年份(例如 2017 年 12 月)与范围内的对应值(灰色单元格)进行比较,并填充表格(绿色区域)以用于发票计算。绿色区域是我有这个公式的地方。
问题:一切正常,除了一个实例。
So, when Electricity meters are selected, ALL data retrieval works well for every tenant.
选择水表后,数据检索适用于除一个以外的所有租户。
当我为那些一切正常的租户评估公式时,它会获取行号,然后匹配并从相应的列中检索数据。
在问题所在的租户实例中,在评估它时显示它好像要匹配行号,然后给出#VALUE!
错误。
我完全感到困惑。根本想不通。
更新:有一个特定的行(在图 9 中突出显示)是罪魁祸首。如果我将它分配给另一个租户,新租户的水读数计算会显示相同的错误,而原始租户的计算现在运行良好。
列中重复的月份用于与从下拉列表中选择的月份进行比较(下图中较深的绿色区域)
图 5:公式运行良好的公式评估。绿点之间显示的“1”是指数据所在的行。
图 7:公式评估中显示的错误。这仅适用于 ONE 租户的水读数。同一租户的电力读数工作正常。