我有一个数据透视表,可以跟踪一些投资活动。它以分类帐格式组织:
Date Asset Movement Value
10-Jan-18 Cash Initial 5000
15-Jan-18 GE Buy 500
20-Feb-18 GE Buy 800
25-Feb-18 GE Dividend 50
15-Mar-18 FB Buy 1000
15-Mar-18 GE Mark2Market 1500
我想创建一个非宏/ VBA / GoogleAppsScript数据透视表,如下所示:
Asset 10-jan-18 15-jan-18 20-feb-18 25-feb-18 15-mar-18
Cash 5000 4500 3700 3750 2750
GE 0 500 1300 1300 1500
FB 0 0 0 0 1000
Total 5000 5000 5000 5050 5250
我已经尝试使用辅助列来构建此表,对于初始表,该列会计算“现金流量”和“资产流量”,并使用以下辅助表将其值相乘。
Movement Cash Asset
Initial 1 0
Mark2Market 0 1
Dividend 1 0
Buy -1 1
Sell 1 -1
但是,这些字段不能使数据透视表在现金帐户没有动静的日期上计算现金余额。什么才能使这项工作正确的电子表格架构?
答案 0 :(得分:0)
随着时间的流逝,我已经按照以下步骤解决了自己的问题:
在第一个分类帐电子表格中,我添加了现金流量,资产流量,现金余额和AssetBalance列。 CashFlow和AssetFlow使用vlookup将Value列乘以相应的Movement表。 CashBalance和AssetBalance分别汇总日期小于或等于交易数据且具有相同资产名称的所有CashFlow和AssetFlow列。
然后,在另一个电子表格上,我使用Google Apps脚本查询命令创建数据透视表:
=query({query(Ledger!A:K,"select A, B, C, D, sum(K) where D != 'Cash' group by A, B, C, D",1);
query(Ledger!A:K,"select A, B, '!Cash', 'Cash', min(J) group by A, B",1)},
"select Col2, Col3, Col4, sum(Col5) where Col2 != 'Institution' and Col2 != '' group by Col2, Col3, Col4 pivot Col1")