Google 表格 - Arrayformula 查询拆分调试
Posted
技术标签:
【中文标题】Google 表格 - Arrayformula 查询拆分调试【英文标题】:Google Sheets - Arrayformula Query Split debugging 【发布时间】:2021-01-18 00:34:32 【问题描述】:我有一个电子表格,我在其中手动复制和粘贴 pdf 表格中的一些数据。 我一直在使用数组查询拆分将该信息拆分为不同的列,它在 2 列(日期和金额)中完美无缺,而在另一列中它大部分时间都有效(参考)。
有效示例:
PDF 数据:4500063794 21.07.2020 187.50 电子表格中的列(拆分后的最终结果):参考:4500063794,日期:21.07.2020,金额:187.50 检索参考列的公式:=ArrayFormula(QUERY(SPLIT(C3:C7 ;" ");"select Col1";0))
这适用于电子表格,没有任何问题
另一个有效的例子:
PDF 数据:447/20.6TBOS 04.07.2020 804.00 电子表格中的列(拆分后的最终结果):参考:447/20.6TBOS,日期:04.07.2020,金额:804.00 检索参考列的公式:=ArrayFormula(QUERY(SPLIT(C3:C7 ;" ");"select Col1";0))
这适用于电子表格,没有任何问题
不起作用的示例:
如果我像第一个示例一样粘贴几行,然后添加几行作为第二个示例,当我随后粘贴更多数据(如第一个示例中的数据)时,split 将停止检索类似于“447/20.6TBOS”的 pdf 数据的参考列04.07.2020 804.00"(第二个例子)。它为这些检索空白单元格。任何人都可以对此有所了解吗? 提前致谢
Example Spreadsheet
【问题讨论】:
【参考方案1】:如果您将查询更改为:
=ArrayFormula(INDEX(SPLIT(REGEXREPLACE(C3:C7; "\s"; "♥");"♥");ROW(C3:C7)-ROW(C3);1))
公式将用心(稀有字符)替换空格,然后填充其余部分。
要更改行的值,只需将最后一个字符 1 更改为 2 或 3:
)-ROW(C3); ==> 1 ))
您可以对G
列使用相同的公式(不要忘记更新范围),因为4500063794 21.07.2020 187.50
和447/20.6TBOS 04.07.2020 804.00
的分隔符是相同的(空格)。
【讨论】:
以上是关于Google 表格 - Arrayformula 查询拆分调试的主要内容,如果未能解决你的问题,请参考以下文章
带有 ARRAYFORMULA 的 MAXIFS 在 Google 表格中不起作用
Google 表格 - Arrayformula 查询拆分调试
在 Google 表格的过滤视图中排序时,ArrayFormula 列消失
Google表格中无限真实动态范围平均值的ArrayFormula