在SO人员的大力帮助下,我设法整理了大约15个QUERY
标签,用于提取必要的数据以进行报告。
为了使代码整洁,我想将所有这些查询括在引用IFS
单元格的Data Validation
语句中,并通过简单地将值更改为来运行QUERY
验证单元格。
我设法使它运行没有错误,但是,我得到了一个单元格输出。
我为此使用的是:
=IFS('Validation'!$A$1 = "Giberish",
{QUERY('All'!$A$5:$AP,
"SELECT AJ, '" & IDBlah & "', 'Blah'
WHERE AJ IS NOT NULL
LABEL '" & IDBlah & "' 'ID',
'Blah' 'BlahBlahBlah'",1)},
'Validation'!$A$1 = "GiberishGiberish",
{QUERY('All'!$A$5:$AP,
"SELECT AJ, 'WCaa', 'Blah'
WHERE AJ IS NOT NULL
LABEL 'WCaa' 'BlahBlah',
'Blah' 'BlahBlahBlah'",1);
QUERY('Upload'!$A$2:$AL,
"SELECT A, 'WCaa', 'Blah'
WHERE A IS NOT NULL
LABEL 'WCaa' '',
'Blah' ''",0)} )
我尝试将所有内容括在ARRAYFORMULA
中,但得到的是同一个单元格输出,没有错误。
正确的方法是什么?
让我知道您是否需要虚拟数据,但请记住,我有公司安全政策,限制了我与公司以外的任何人共享任何工作表的可能性。
答案 0 :(得分:1)
您将需要使用IF
而不是IFS
,例如:
=IF(Validation!$A$1 = "Giberish", {QUERY(All!$A$5:$AP,
"SELECT AJ,'"&IDBlah&"','Blah'
WHERE AJ IS NOT NULL
LABEL '"&IDBlah&"''ID','Blah''BlahBlahBlah'",1)},
IF(Validation!$A$1 = "GiberishGiberish", {QUERY(All!$A$5:$AP,
"SELECT AJ,'WCaa','Blah'
WHERE AJ IS NOT NULL
LABEL 'WCaa''BlahBlah','Blah''BlahBlahBlah'",1);
QUERY(Upload!$A$2:$AL,
"SELECT A, 'WCaa','Blah'
WHERE A IS NOT NULL
LABEL 'WCaa''','Blah'''",0)}, ))
当IFS
与ARRAYFORMULA
组合时,它获得了一项特殊技能,该技能要求输入数组才能再次输出数组。