在Google Sheets中计算最右列各值占列总值的百分比
自动计算投资组合实际占比的方案
原始数据表格
| 股票代码(Ticker) | 目标占比(Wanted%) | 实际占比(Actual%) | 四月(April) | 五月(May) | 六月(June) |
|---|---|---|---|---|---|
| AAPL | 30 | 1$ | 1$ | 150$ | |
| META | 50 | 10$ | 5$ | 15$ | |
| MSFT | 20 | 100$ | 10$ | 120$ |
公式实现
在C2单元格(AAPL对应的实际占比单元格)输入以下公式,下拉填充至C3、C4即可:
=ROUND(OFFSET($D2,0,COUNTA($D2:$XFD2)-1)/SUM(OFFSET($D$2,0,COUNTA($D:$XFD)-1,3,1))*100,1)
公式解析
COUNTA($D2:$XFD2):统计当前行从D列到表格最右侧的非空单元格数量,自动定位最新的月份列OFFSET($D2,0,COUNTA($D2:$XFD2)-1):获取当前行最右列的股票市值SUM(OFFSET($D$2,0,COUNTA($D:$XFD)-1,3,1)):计算最右列所有股票的总市值(3为当前股票行数,若后续新增股票需调整此数值)ROUND(...,1):将结果保留1位小数,匹配示例格式
结果验证
代入六月数据计算:
- 总市值:150$ + 15$ + 120$ = 285$
- AAPL实际占比:
150/285*100 ≈ 52.6% - META实际占比:
15/285*100 ≈ 5.2% - MSFT实际占比:
120/285*100 ≈ 42.1%
后续每月新增列时,公式会自动识别新的最右列,无需手动修改。
内容的提问来源于stack exchange,提问作者Maxim_united
相关产品推荐
相关产品推荐

