我一直致力于为特定工作表制定解决方案,我必须以特定的方式显示数据,但过去一天一直在苦苦挣扎。
我基本上想检查几个列,并在特定单元格具有特定值的条件下找到该范围内的第一个非空值。
让我更深入一点:
我有一张从表单中提取信息的工作表,示例单元格对整个列都有一个公式,因为它使用了FILTER公式。
=FILTER('Form Responses'!$D:D, 'Form Responses'!$B:B = "Outgoing" )
“表单响应”表单中的D列包含数值。
“表单回复”表单中的B列包含“传入”或“传出”文本。
对于这个特定的列,我找到了“Outgoing”的引用,如果找到它,那么我们列出并行D列的值。因此,如果我们在B3中有“Outgoing”,那么我们将得到D3中的任何值。 B17和D17,B143和D143等
所有这些都很有效,但我具体的问题是找到可以在多列(G:T)中的任何位置的值。
从G列到T列,我有在表单级别选择并放入表单响应表的子类别。
我需要做的是找到“传出”或“传入”值的特定子类别,这就是我正在努力的地方。
我设法将几个实现了我需要的公式组合在一起:
=FILTER('Form Responses'!$G:T, 'Form Responses'!$B:B = "Outgoing" )
但是,它根据原始子类别显示不同单元格中的内容。
这是什么意思?
如果我在表单响应表中有从G到T的列中的子类别,那么我想找到该特定值(每行只能有一个子类别)并将其放入我们的信息中表,我们说F列。
所以我们的子类别可以是Sub 1(G1),Sub 2(E1),Sub 3(E1)等,但我们需要找到该值并将其显示在F:F。
可悲的是,FILTER公式似乎无法格式化它在单个公式中找到的值,而是将它们放在一起。
我非常抱歉文字的墙,但我想尽可能地彻底。如有必要,请随时编辑!
下面是电子表格的图片,以便更好地理解我的意思。 Sub 1,Sub 2和Sub 3都应该属于子类别列。
以下是表单响应表单的示例。
我首先使用FILTER的原因是因为它可以使用单个公式立即从表单响应表中提取所有信息,并且我有一个完整的单元格副本,如图所示,但是“Incoming”因此,每当我尝试使用INDEX和MATCH时,我都会留下空单元格(由于引用静态单元格,如B1,B2,E4等)。
提前感谢您提供任何帮助!
答案 0 :(得分:1)
=ArrayFormula(G:G&H:H&I:I)
=FILTER('Form Responses'!$AA:$AA,'Form Responses'!$B:B = "Outgoing")
ArrayFormula
返回值数组&
逐行连接每列的值