答案1
创建一个虚拟区域,自动显示过去五周的表现(仅此而已)。假设您的原始数据位于列 A
和 中B
。选择一个您未使用的 2×6 范围。*它可能在另一张表上,也可能在很远的地方,例如。AA1:AB6
我假设您选择了G1:H6
。将您的列标题复制到 G1
和 H1
。输入
=INDEX(A:A, COUNTA(A:A)+ROW()-6)
到G2
。向下拖动/填充到G6
(例如,五周)并向右拖动/填充到H2:H6
(两名员工)。
G2:H6
现在将显示来自 的过去五周的数据 A:B
。
快速解释:
COUNTA(A:A)
计算列中非空白单元格的数量A
。如果最近的单元格及其上方的所有单元格都为非空白,并且其下方的所有单元格都为空白,则此方法将为您提供最新数据的行号。如果上方有空白单元格,或下方有非空白单元格,则需要调整此方法或设计其他方法。ROW()
是所在行的行号。即,在G2
和 中H2
,它是2;在G6
和 中H6
,它是6。COUNTA(A:A)+ROW()-6
是(COUNTA(A:A)-5+1) + (ROW()-2)
。(COUNTA(A:A)-5+1)
是倒数第五周数据的行号。例如,如果您有 100 行数据,则最后五行是 96、97、98、99 和 100,而 100−5+1 是 96。(ROW()-2)
是范围内从零开始的行号G2:H6
。即,在G2
和 中H2
,它是 0;在G6
和 中H6
,它是 4。- 因此,将它们相加,我们得到倒数第五行、倒数第四行、倒数第三行、倒数第二行和最后一行的数字(例如,96、97、98、99 和 100)。
INDEX(A:A, <row_number>)
获取列中指定行的值A
。将公式从列拖到G
列 时H
,它会自动更改为。INDEX(B:B, <row_number>)
因此G1:H6
显示过去五周的表现(包括列标题)。根据该范围绘制图表:
如果将数据添加到列 A
和 B
,图表将自动适应:
______________
* 您可能可以使用 2×5 范围,不包括列标题。