【问题标题】:Excel PivotExcel 数据透视表
【发布时间】:2010-10-14 08:47:09
【问题描述】:

我是 excel 新手,想知道 excel 是否内置了执行以下操作的功能。

转这个数据:

Name  | Activity          | Option
Bob   | Monday Activities | Golf
Bob   | Tuesday Activities| Kayak
Marge | Monday Activities | Spa
John  | Tuesday Activities| Soccer
Liz   | Tuesday Activities| Spa

进入:

Name  | Monday Activities | Tuesday Activities
Bob   | Golf              | Kayak
Marge | Spa               |
John  |                   | Soccer
Liz   |                   | Spa

【问题讨论】:

  • excel 确实支持数据透视表,但我不知道如何使用它们。这个问题也与编程无关。
  • Bob 不会高兴的,他应该在星期二去划皮划艇
  • @rmeador,如果它需要一个宏,它可能是:)

标签: excel pivot crosstab


【解决方案1】:

数据透视表允许您操作和显示数字数据,而不是诸如“kayak”之类的字符串,因此虽然您可以非常轻松地创建数据透视表,但它只会计数/求和等。皮划艇、足球等的实例,不显示值。

您可以重新格式化数据以生成近似值的数据:

名称 活动 Golf Kayak Soccer Spa 鲍勃星期一 1
鲍勃星期二 1
玛吉星期一 1 约翰星期二 1
Liz Tuesday 1(上面可能无法正确显示,但如果使用“选择性粘贴>文本”粘贴到 Excel 中将正确显示)

但是,即使这样,您仍然需要结合使用 =GETPIVOTDATA 和其他公式来获得令人满意的结果。由于非常有可能将错误引入数据(拼写、尾随空格等),这可能会变得非常混乱。考虑到这无论如何都需要您重新格式化数据(如果您正在这样做,您也可以按照自己的意愿格式化),我猜这对您来说可能没有多大用处。

实现您想要的东西所需的 VBA 非常重要,并且在很大程度上取决于您的数据的确切布局以及哪些信息是已知的或可以从其他地方提取的信息,例如活动,名称。如果数据集不是很大,那么重新格式化的工作可能比尝试编程解决方案要少。

【讨论】:

    【解决方案2】:

    Excel 将在某种程度上支持您在其数据透视图功能中寻找的内容,该功能将您提供的格式的数据转换为自定义的、用户定义的表格或图表。

    Instructions for Excel 2003

    Instructions for Excel 2007

    该表格将支持在第一列中列出唯一名称并在第一行中列出唯一活动,但对于选项,Excel 无法知道如何显示它们,并将尝试将它们转换为数字,因为可能每个名称/活动组合可能存在多个选项。

    最后,有些人可能会建议您使用 Excel 的 transpose 功能。这是通过选择表并复制它来完成的。然后,您可以右键单击空白单元格并选择选择性粘贴,然后选择Transpose。这只会翻转不是您要查找的行的列。

    我建议您使用数据透视表功能,但请考虑将选项值转换为数字。

    祝你好运!

    【讨论】:

    • 感谢这篇文章,如果本机 pivot 不支持,你知道有什么宏可以做到这一点吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多