我有一个像
这样的电子表格2005 Alameda total HS graduates 1234
2005 Alameda UC enrollees 112
2006 Alameda total HS graduates 892
2006 Alameda UC enrollees 84
...
2009 Yolo total HS graduates 1300
2009 Yolo UC enrollees 93
几年来每个CA县都有等等。
我想生成一个这样的电子表格:
county 2005 2006 ...
Alameda 11.1% 9%
Alpine 7% 8%
...
Yolo 5.5% 4%
即。我希望将年份从行投影到列并为每个县设置一行,然后将毕业生的数量(原始工作表中每个奇数行的数据)除以UC登记者的数量(偶数行数据)每年,并将其插入适当的单元格。
这对我来说很容易用Java做,但我想要了解仅仅使用excel / Google工作表的可能性 - 我怎么能完成这个?
答案 0 :(得分:2)
假设县已经排序,并且他们从单元格B2开始,请在单元格F2中输入=B2
,然后在F3中输入以下内容:
=INDIRECT("B"&COUNTIF(B3:B$9999,"<="&F2)+ROW())
您可以根据记录数更改9999
,但原样可以。
将F3复制到需要的行数:
然后,您可以使用SUMPRODUCT
来计算百分比:
=IFERROR(
SUMPRODUCT(($A$2:$A$100=G$1)*
($B$2:$B$100=$F2)*
($C$2:$C$100="UC enrollees")*
$D$2:$D$100
)
/
SUMPRODUCT(($A$2:$A$100=G$1)*
($B$2:$B$100=$F2)*
($C$2:$C$100="total HS graduates")*
$D$2:$D$100
),
"")
第一个SUMPRODUCT
总计与年份和县相匹配的UC登记者。第二个SUMPRODUCT
对HS毕业生也是如此。结果是分开的,IFERROR
处理丢失数据的被零除错误。
由于您的示例显示百分比,我假设您想要由HS毕业生划分UC登记者,而不是相反。无论哪种方式,我都不会得到与你相同的总数,所以如果我误解了,请告诉我。
答案 1 :(得分:1)
这是进行比较的数据透视表方式。
他们有很多方法可以做到这一点,但我添加了列标题,并选择使用此公式将百分比放在E列中的偶数行中,将第1列中的奇数行放入零行中: -
=IF(ISEVEN(ROW()),D3/D2*100,0)
然后我在工作表2中插入了一个数据透视表,参考了工作表1中的数据并设置了如图所示的字段,它非常自动: -