【问题标题】:Avoiding reference error when deleting rows in another sheet删除另一个工作表中的行时避免引用错误
【发布时间】:2016-08-17 13:12:35
【问题描述】:

我有一个使用用户窗体和 VBA 制作的可视日历。信息被输入单独的数据表,日历使用公式将信息放在日历上,然后运行宏以将事物合并在一起。

现在,日历运行良好,但我注意到如果我转到其中一个数据表并删除一行,那么日历中的行会在公式中出现 #REF 错误。这使得很难将旧项目从日历中删除并向上移动。

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

我想知道我可以对这个公式进行什么样的调整,这样就不会发生参考错误。我环顾四周,试图做一个 INDIRECT/ADDRESS 公式,但无法真正让它们起作用。

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

【问题讨论】:

  • 更改引用以引用在删除之前不会删除的行

标签: excel reference excel-formula formula


【解决方案1】:

您可以将引用替换为 INDEX 公式:

=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))), "")

【讨论】:

  • 效果很好,谢谢!您可以上下拖动,这很棒。我有一个问题,因为我也有条件格式设置,我刚刚意识到它有参考错误。这就是条件格式的公式曾经是:='HI Project Work Database'!$C2="All of the Above",我尝试使用:=INDEX('HI Project Work Database'!C:C,ROW(2:2))="All of the Above",但无法让它工作。有什么想法吗?
  • 我想我明白了,忘记了绝对格式......我相信
猜你喜欢
  • 2014-09-19
  • 1970-01-01
  • 1970-01-01
  • 2023-01-03
  • 2018-10-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-27
相关资源
最近更新 更多