![LibreOffice 数据透视表按月分组](https://linux22.com/image/1322441/LibreOffice%20%E6%95%B0%E6%8D%AE%E9%80%8F%E8%A7%86%E8%A1%A8%E6%8C%89%E6%9C%88%E5%88%86%E7%BB%84.png)
我有这样的数据:
Date Customer Amount Month
09-01-12 A 20 =A2 (formatted so it shows month name)
10-01-12 B 10 =A3 (formatted so it shows month name)
18-01-12 B 25 etc
05-02-12 A 15 etc
我想使用数据透视表查看每个客户每月的总金额。例如
Customer Jan Feb Total
A 20 15 35
B 35 35
Total 55 15 70
我在数据中添加了一个额外的列,月份格式为“Jan”、“Feb”等。在数据透视表中,它为每个日期提供一列,而不是按月份分组。因此结果是这样的:
Customer Jan Jan Jan Feb Total
A 20 15 35
B 10 25 35
Total 20 10 25 15 70
我该如何解决?
答案1
我认为问题在于“ Month
”列对于每个日期都有不同的值。因此 LibreOffice 无法理解您想要按不同月份对输出进行分组。
因此,解决方案可能是根据单元格 A2“构造”一个日期,忽略日期:
=A2
将“ ”列中的公式“ ”替换Month
为=DATE(YEAR(A2),MONTH(A2),"1")
这样,根据原始日期,每个月份单元格都会有相同的日期。
然后,使用模式“
MMMM
”格式化该列以将日期显示为“January
”。Month
现在,刷新数据透视表或使用“ ”中的“Column Fields
、Customers
“ ”中的“ ”Row Fields
和Sum - Amount
“ ”中的“ ”重新创建它Data Fields
。
这应该会产生期望的结果。
答案2
我不确定在提出这个问题时在 LibreOffice 中是否可以做到这一点,但现在这很容易做到,所以如果有人偶然发现这个问题,这可能会有所帮助:
使用输入表中的数据(顺便说一下,最后一列“月份”是多余的),应该执行以下操作。
创建数据透视表:
- 选择表格并从菜单中选择
Data > Pivot Table > Create...
- 在
Column Fields
是Date
领域 - 在
Row Fields
是Customer
领域 - 在
Data Fields
该Amount
领域
创建数据透视表时:
- 选择/单击包含日期的行中的任意单元格
- 从菜单中选择
Data > Group and Outline > Group
- 选择
Group By > Intervals
- 检查
Months
(或您想要的任何间隔)