Google sheets 是否有谷歌表单功能将一个范围压缩为一列?

Google sheets 是否有谷歌表单功能将一个范围压缩为一列?,google-sheets,google-sheets-formula,google-sheets-query,Google Sheets,Google Sheets Formula,Google Sheets Query,我想找到这个函数的内置函数,但没有用,所以我不得不用脚本编写它: function squeeze(range) { return [].concat(...range).filter(n => n) } 这个JS函数将二维数组范围展平并返回它 请注意它过滤掉了列不均匀的空单元格。虽然尚未正式记录,但flatte()也作为内置公式存在。 看 更新:自2020年年底以来,该功能现已记录在案。有关更多信息,请参阅。如果flatte被某个邪恶的谷歌家伙删除,您可以执行以下操作: =TRA

我想找到这个函数的内置函数,但没有用,所以我不得不用脚本编写它:

function squeeze(range) {
  return [].concat(...range).filter(n => n)
}
这个JS函数将二维数组
范围展平并返回它


请注意它过滤掉了列不均匀的空单元格。

虽然尚未正式记录,但flatte()也作为内置公式存在。 看


更新:自2020年年底以来,该功能现已记录在案。有关更多信息,请参阅。

如果
flatte
被某个邪恶的谷歌家伙删除,您可以执行以下操作:

=TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(A1:C3),,9^9)),,9^9), " "))


多亏了JPV,根据他的回答,我添加了
FILTER
,省去了空单元格:

=FILTER(FLATTEN(B2:L7), FLATTEN(B2:L7)<>"")

那么将多个列合并为一个列?在SOCool上应该有类似的问题,但不完全相同:如果列不均匀,它会留下空单元格。我试过使用带ISBLANK的过滤器,但它说范围需要是一行还是一列<代码>=筛选器(展平(B2:L7);ISBLANK(B2:L7))
对于需要调试的任何人
筛选器范围必须是单行或单列。
,第二个参数(条件)也必须展平。所以它是
=过滤器(展平(B2:L7);ISBLANK(展平(B2:L7))
=FILTER(FLATTEN(B2:L7), FLATTEN(B2:L7)<>"")
=FILTER(FLATTEN(TRANSPOSE(B2:L7)), FLATTEN(TRANSPOSE(B2:L7))<>"")