excel 2010,在两列中查找空白单元格,在相应的不同列中返回文本

时间:2016-04-27 15:11:23

标签: excel excel-2010

以下是我的数据的屏幕截图:

Data

我想搜索B4:B40和C4:C40并找到两个指定范围都是空白的单元格。如果两个范围都为空,则返回A列中相应行中的文本。理想情况下,输出可以合并,并且可以列出类似8:00-2:00的内容。

这是我到目前为止所拥有的:     =INDEX('C:\Path\to\other\worksheet\[Blank Schedule Grid.xlsx]Susan'!B4:B40, MATCH("",'C:\Path\to\other\worksheet\[Blank Schedule Grid.xlsx]Susan'!B4:B40,0),'C:\Path\to\other\worksheet\[Blank Schedule Grid.xlsx]Susan'!B2)

我是在正确的道路上吗?

2 个答案:

答案 0 :(得分:2)

您想要的公式是:

=IFERROR(INDEX($A$18:$A$40,AGGREGATE(15,6,(ROW($A$18:$A$40)-ROW($A$18)+1)/(($B$18:$B$40="")*($C$18:$C$40="")),ROW(1:1))),"")

我会让你输入工作簿和工作表参考。它们仅在Ranges上需要。不要将它们放在ROW()函数中的Range引用上。它们只是返回一个数字,它们引用的表格无关紧要。只需确保范围本身匹配。

enter image description here

与工作簿引用的串联会使公式变得冗长而且难以处理。要做到这一点,VBA将是最佳途径。

修改

感到无聊并决定放入您的工作簿和工作表参考:

=IFERROR(INDEX('C:\Path\to\other\worksheet\[Blank Schedule Grid.xlsx]Susan'!$A$4:$A$40,AGGREGATE(15,6,(ROW($A$4:$A$40)-ROW($A$4)+1)/(('C:\Path\to\other\worksheet\[Blank Schedule Grid.xlsx]Susan'!$B$4:$B$40="")*('C:\Path\to\other\worksheet\[Blank Schedule Grid.xlsx]Susan'!$C$4:$C$40="")),ROW(1:1))),"")

答案 1 :(得分:0)

您想要单个单元格还是新列中的所有值?

=IF(AND(ISBLANK(B18), ISBLANK(C18)), A18, "")

假设您的数据在A18中开始(根据屏幕截图),您可以将其放入单元格D18并完全复制。