我正在处理我的个人财务电子表格,我有一个表格列出了以下列:"月","收入",费用和#34;"注意& #34;,我正在建立一个第二个表来用来构建一个新的图表,这样我就可以查看与数据相比的年度比较(即,我会将所有Januarys'数据彼此相邻地进行比较)。
以下是我用来转置此数据的公式,但我知道必须有更好的方法,但我的搜索失败了我:
=arrayformula({
filter(B5:B64,MONTH(B5:B64)=1);
filter(B5:B64,MONTH(B5:B64)=2);
filter(B5:B64,MONTH(B5:B64)=3);
filter(B5:B64,MONTH(B5:B64)=4);
filter(B5:B64,MONTH(B5:B64)=5);
filter(B5:B64,MONTH(B5:B64)=6);
filter(B5:B64,MONTH(B5:B64)=7);
filter(B5:B64,MONTH(B5:B64)=8);
filter(B5:B64,MONTH(B5:B64)=9);
filter(B5:B64,MONTH(B5:B64)=10);
filter(B5:B64,MONTH(B5:B64)=11);
filter(B5:B64,MONTH(B5:B64)=12)
})
这看起来很笨重,虽然它可以做我想要的。关于如何简化这一点的任何建议?
编辑:为了澄清,我会收集类似于Jan 2015; Feb 2015; Mar 2015;
等的数据,并将其转置为:Jan 2015; Jan 2016; Jan 2017; Feb 2015; Feb 2016; Feb 2017
等。
答案 0 :(得分:0)
=ARRAY_CONSTRAIN(SORT({B5:B64,MONTH(A1:A24)},2,TRUE),COUNTA(B5:B64),1)
{B2:B64,MONTH(B5:B64)}
是一个由两列组成的自定义数组,即输入和一列月份。SORT
函数对自定义数组进行排序ARRAY_CONSTRAIN
功能会删除月份列。