【发布时间】:2017-11-30 12:27:56
【问题描述】:
我有一张表,在 M 列中有访问日期,然后我输入了一个公式,然后将 6 个月添加到 N 列中显示的日期。
然后我有一个隐藏的两列可以计算出日期,并且从该日期开始它已经被 RAG 评估,红色琥珀色绿色。
- M 列是访问日期
- 下一次访问第 N 列
- Q 列是告诉您超过或低于多少天的公式
- R 列基于 Q 列,如果它是 G、A、R(绿色、琥珀色或红色)
我有这个公式可以列出所有日期并删除 N 列中的所有空白单元格
=IFERROR(INDEX(Sheet2!$N$3:$N$78, SMALL(IF(LEN(Sheet2!$N$3:$N$78)=0,"", ROW(Sheet2!$N$3:$N $78)-MIN(ROW(Sheet2!$N$3:$N$78))+1), ROW(Sheet2!N2))),"")
我想要的是当下面的公式为真时,上面的公式会被触发,但仅适用于 R 列中包含 R 的单元格
=IF (CNI!R3="R",SHEET2!N3,"")
希望这是有道理的。
如果更容易实现,我不介意使用 VBA
【问题讨论】:
-
在试图理解时,我会重复我认为我正在阅读的内容。不正确的地方请指正。您的工作簿中有可以由 If/Then 和条件格式处理的项目。如果缺少数据(基于 N 列),您还希望删除/删除行。关于 If/Then,您可以 嵌套 if 语句,如果表 CNI cell R3 = "R" 那么您的真实语句将是 IFERROR...))),"") 与您的虚假陈述是“”。如果您要删除行,VBA 可以接受该代码(注意每个“必须是”)。这在 VBA 或 excel 中类似。
-
@pnuts Sheet1 是公式所在的位置,而 sheet 2 是所有数据所在的位置。
-
如果 R3="R" 则为真,但范围为 R3:R78
-
@Cyril 当我尝试嵌套 if 语句时,它只返回 true 或 false 并且空白单元格再次出现。
标签: excel excel-formula array-formulas vba