删除另一张表中的行时避免引用错误

我有一个使用用户窗体和VBA制作的可视化日历。 信息被input到单独的数据表中,日历使用公式在macros运行之前将信息放在日历上,以将事物合并在一起。

现在,日历完美的工作,但我注意到,如果我去的数据表之一,删除一行,日历中的行然后在公式内部#REF错误。 这使得很难从日历中删除旧的项目并移动。

日历上的公式现在正在查看特定工作表中的月份(1 – 12月为2年)下的值“是”,然后获取名称和项目名称单元格值。

我想知道我可以对这个公式进行什么样的调整,以避免引用错误。 我环顾四周,试图做一个间接/地址公式,但不能真正让他们工作。

配方示例:
=IF(ISNUMBER(FIND("Yes",'HI Project Work Database'!D2)), ('HI Project Work Database'!$B2&" - "&'HI Project Work Database'!$A2), "")

您可以用INDEX公式replace引用:

 =IF(ISNUMBER(FIND("Yes",INDEX('HI Project Work Database'!D:D,ROW(2:2)))), (INDEX('HI Project Work Database'!$B:$B,ROW(2:2)) & " - " & INDEX('HI Project Work Database'!$A:$A,ROW(2:2))), "")