我可以限制查询公式中特定列字符的长度吗?
Can I limit the length of a specific column's characters inside a Query formula?
我将以下 Query
公式嵌套在几个 Sort
公式中,这些公式现在运行良好:
=ARRAYFORMULA((SORT((SORT((SORT((QUERY('Paste Data Here'!A3:V, "where Q = 1 and V = 1",0)),12,TRUE)),7,FALSE)),6,FALSE))
我想做的是trim'Paste Data Here'
Column H
中数据的结尾作为Array formula
的一部分。如果单独完成(没有 Query
),我可以 trim Column H
我想要的公式:
=LEFT(H3,(LEN(H3)-12))
有什么方法可以将第二个公式插入到第一个公式中吗?我正处在我只是猜测并把它扔到各处的地步,但似乎没有任何进展。
谢谢!
编辑: 感谢@MattKing 让我一路走来。我的公式在更新为:
后有效
=ARRAYFORMULA((SORT((SORT((SORT((QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V})),12,TRUE)),7,FALSE)),6,FALSE)))
但是,出于某种原因,当我尝试按照他建议的以下公式摆脱 Sort
函数时,我收到一条 Query completed with an empty output
消息:
=ARRAYFORMULA(QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V}, "where Col12 = 1 and Col21 = 1 order by Col12 asc, Col7 desc, Col6 desc",0))
它可能与引用的列有关吗?我对 Query
公式真的很陌生,所以我不知道我需要在这里修复什么...
绝对有办法:)
您还可以 "internalize" 所有这些 sort()。
=ARRAYFORMULA(QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V}, "where Col12 = 1 and Col21 = 1 order by Col12 asc, Col7 desc, Col6 desc",0))
我想通了!感谢@MattKing 让我离终点线只有几英寸。这是它的作用:
=ARRAYFORMULA(QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V}, "where Col17 = 1 and Col22 = 1 order by Col6 desc, Col7 desc, Col12 asc",0))
列号必须从 Col12
& Col21
更改为 Col17
& Col22
,并且我必须更改 [= 之后列的顺序15=],但一旦我这样做了,一切就都到位了!
我将以下 Query
公式嵌套在几个 Sort
公式中,这些公式现在运行良好:
=ARRAYFORMULA((SORT((SORT((SORT((QUERY('Paste Data Here'!A3:V, "where Q = 1 and V = 1",0)),12,TRUE)),7,FALSE)),6,FALSE))
我想做的是trim'Paste Data Here'
Column H
中数据的结尾作为Array formula
的一部分。如果单独完成(没有 Query
),我可以 trim Column H
我想要的公式:
=LEFT(H3,(LEN(H3)-12))
有什么方法可以将第二个公式插入到第一个公式中吗?我正处在我只是猜测并把它扔到各处的地步,但似乎没有任何进展。
谢谢!
编辑: 感谢@MattKing 让我一路走来。我的公式在更新为:
后有效=ARRAYFORMULA((SORT((SORT((SORT((QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V})),12,TRUE)),7,FALSE)),6,FALSE)))
但是,出于某种原因,当我尝试按照他建议的以下公式摆脱 Sort
函数时,我收到一条 Query completed with an empty output
消息:
=ARRAYFORMULA(QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V}, "where Col12 = 1 and Col21 = 1 order by Col12 asc, Col7 desc, Col6 desc",0))
它可能与引用的列有关吗?我对 Query
公式真的很陌生,所以我不知道我需要在这里修复什么...
绝对有办法:)
您还可以 "internalize" 所有这些 sort()。
=ARRAYFORMULA(QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V}, "where Col12 = 1 and Col21 = 1 order by Col12 asc, Col7 desc, Col6 desc",0))
我想通了!感谢@MattKing 让我离终点线只有几英寸。这是它的作用:
=ARRAYFORMULA(QUERY({'Paste Data Here'!A3:G,IFERROR(LEFT('Paste Data Here'!H3:H,LEN('Paste Data Here'!H3:H)-12)),'Paste Data Here'!I3:V}, "where Col17 = 1 and Col22 = 1 order by Col6 desc, Col7 desc, Col12 asc",0))
列号必须从 Col12
& Col21
更改为 Col17
& Col22
,并且我必须更改 [= 之后列的顺序15=],但一旦我这样做了,一切就都到位了!