谷歌电子表格中是否有办法获取数组多个值以换取输入值数组?
我附上了一张图片,里面有一个想要的例子。
基本上,想要的东西是: = LOOKUP(input_array,range_with_ID_values,range_with_return_values) 返回' result_array'具有与" input_array'
中的值匹配的值数组编辑: 正如评论所建议的,我正在阐述为什么我需要这个。我想检查是否所有相关任务都已完成。如果是,那么这个依赖任务'应该开放接受。附加图像以描述下面的场景
在此图像中,在任务1,2,3未完成之前,任务4将始终“等待依赖性”'。一旦所有任务1,2,3完成',它将变为待定
另请注意,无需序列化任务。中间可能存在任务,这与我们需要更新状态的任务无关。例如。可能会有诸如“买杂货”,“杀死蟑螂”这样的任务。 “植物浇水”等等。 taks并不依赖
答案 0 :(得分:4)
使用TEXTJOIN作为数组公式
=TEXTJOIN(",",TRUE,IF(ISNUMBER(SEARCH("," & A2:A9 & ",","," & D3 & ",")),B2:B9,""))
作为数组公式,必须在退出编辑模式时使用Ctrl-Shift-Enter而不是Enter确认。如果操作正确,那么Excel会将{}
放在公式周围。
答案 1 :(得分:0)
在Excel中,请考虑以下用户定义函数:
Public Function MultiReturn(rng As Range, inputs As String) As String
Dim arry1, a, outstr As String, i As Long, arry2
arry1 = Split(Mid(inputs, 2, Len(inputs) - 2), ",")
outstr = "{"
arry2 = rng
For Each a In arry1
For i = LBound(arry2, 1) To UBound(arry2, 1)
If CStr(a) = CStr(arry2(i, 1)) Then outstr = outstr & arry2(i, 2) & ","
Next i
Next a
MultiReturn = Mid(outstr, 1, Len(outstr) - 1) & "}"
End Function
例如:
如您所见,第一个参数是要搜索的表,第二个参数是所需格式的输入集(用逗号分隔的列表括起来的大括号)。