我有一张表,其中帐户名称相同,但年份不同(见下文示例)。我想创建一个数据透视项目字段,用于计算同一帐户名称的年份之间的差异
账户名称 年份 金额 帐户 1 2014 15000 帐户 1 2015 20000 帐户 2 2014 30000 帐户 2 2015 60000
因此,对于帐户 1,差额为 5K,而对于帐户 2,差额为 30K。当金额属于同一列且只能按年份区分时,如何获取两个字段的差额?
金额总和列标签
行标签 2014 2015 总计 账户 1 15000 20000 35000 账户 2 30000 60000 90000 总计 45000 80000 125000我想要显示的输出如下:
我需要将变化作为数据透视表的一部分,因为我想根据变化列获取前 40 名。
金额总和列标签
账户。2014 2015 变化 账户 2 30000 60000 30000 账户 1 15000 20000 5000 总计 45000 80000 35000
答案1
我能得到的最接近的数据透视表如下:
ROWS: Account Name
COLS: Year
VALUES: Amount
然后右键单击其中一个值并选择“将值显示为”。将其从默认的“无计算”更改为“差异”,并将Base Field
“年份”Base Item
和(previous)
现在您已经接近目标了,但是如果您还想查看原始数据,则需要再次添加amount
。VALUES
调整标题即可完成。
更新:另一种方法是使用以下公式向源数据添加另一列(假设您已将源数据格式化为 Excel 表并按帐户/年份排序):
=IF([@Account]=R[-1]C1, IF(ISNUMBER(R[-1]C), [@Amount]-R[-1]C3, 0), 0)
这仅当您的数据中没有缺失年份时才有效。但是,您可以对该列应用前 10 个过滤器,这将相应地更改数据透视表的显示。
答案2
首先单击行区域;这非常重要,没有意识到这一点让我损失了 5 年的数据透视表使用经验。
单击字段项目和集合并选择“项目”。它将显示为“公式 1”,然后在下面显示一个表达式。在下面的框中,应该有一个字段名称,然后右边有一个框,其中包含值 2014 和 2015。
在表达式字段中,只需单击基准年份并添加“-”,然后单击移动年份(即 2015 - 2014)。
然后它会将该行添加到行标签的底部,并且可以自行选择。