Google 电子表格最后 X 行

问题描述 投票:0回答:4

我使用 Google 电子表格中的图表来绘制过去 90 天的数据。但是,当添加新数据时,它超出了图表当前选择的 A1:A90 范围。是否有一个函数可以用来选择 Google 电子表格一列中的最后 90 行数据?

google-sheets
4个回答
22
投票

您可以创建一个新工作表并使用

QUERY
函数获取最后 90 行:

  • 如果 A 列是唯一且可排序的,您只需按相反顺序对数据进行排序并取出前 90 行,然后再次反向排序:
    
    =SORT(QUERY(Sheet1!A:Z,"order by A desc limit 90"),1,1)
    
  • 如果不是这种情况,那么您需要通过找到最后一行并从中减去 90 来计算偏移量,然后查询数据以返回从该偏移量开始的 90 行:
    
    =QUERY(Sheet1!A:Z,"limit 90 offset "&(COUNT(Sheet1!A:A)-90))
    

然后您可以使用此工作表生成图表。


1
投票

如果您的一列或多列可排序,您还可以使用

SORTN
函数来实现所需的结果。

在下面的示例中,最后 90 行按降序列出,第一个排序将它们反向排序回升序:

SORT(SORTN(Sheet1!A:Z,90,0,1,0),1,1)

如果您希望在过滤特定属性后列出最后 90 行,您可以将上述内容与过滤器功能结合起来:

SORT(SORTN(FILTER(Sheet1!A:Z,filter to be applied),90,0,1,0),1,1)

如果需要,您还可以通过应用两个

SORTN
函数来列出倒数第二 90 条记录(从最后算起 91 到 180 条),如下所示:

SORTN(SORTN(Sheet1!A:Z,180,0,1,0),90,0,1,1)

0
投票
据我所知,不,除非您编写自己的谷歌电子表格脚本并使用范围。脚本可以通过

以编程方式向图表提供数据

    打开电子表格和工作表
  • 获取数据
  • 隔离范围,例如最后 90 行
  • 将该范围输入图表组件

0
投票
前面的答案需要一个可排序的列。但这是不需要的。使用

ROW

 获取索引并反向保留原始顺序:

=LET( rg, A1:D90, QUERY( ARRAYFORMULA(HSTACK(rg,ROW(rg))), "Select * order by Col"&COLUMNS(rg)+1&" desc limit 90" ) )
    
© www.soinside.com 2019 - 2024. All rights reserved.