2010-09-30 241 views
5

我是水晶报表的新手,所以这对你来说可能是新手。水晶报表交叉表

我创建了一个总行数在右边的交叉表。我如何添加一个额外的列来显示行的平均值。我正在使用水晶报表2008

下面是交叉表的粗略示例 - 如何插入平均值列?由于

 New York Chicago  Boston  Total  Average 

销售总额

回答

1

做在后端,而不是水晶。您希望Crystal尽可能少地执行数据操作,因为它是一种报告工具。

+0

当然,我可以做到这一点。但是,如何在交叉表中插入额外的列来显示平均数字 – user455580 2010-09-30 15:52:29

+0

忘记了Crystal解决方案,请使用任何后端工具(SQL Server?)添加额外的列(例如,在第二个视图中, )我假设你可以直接修改报表的数据源,但是如果不能,你可以在报表中使用数据源之前用另一步中的任何工具修改它。 – Beth 2010-09-30 16:02:36

+4

OP正在尝试使用交叉表,即。转移数据。这是一种情况,通常最好在表示层(即Crystal,这里)而不是数据层中执行它 - 即使Crystal的交叉表*吸吮*。 – 2010-10-01 10:39:35

9

Crystal不允许您在相同的分组级别向交叉表添加其他列,并且它会在所有级别的摘要中重复任何汇总值。但是,以下内容应达到您想要的效果:

  1. 创建一个虚拟公式,设置为常量值(例如。“”)。
  2. 在交叉表专家中,将您的虚拟公式添加到列项目列表中作为第一个项目。
  3. 在交叉表专家中,您应该在汇总字段列表中拥有总销售额的总和。将可用字段列表中的总销售额数字拖到汇总字段中,以使汇总总额在汇总字段中出现两次,突出显示第二个总和并单击更改汇总...按钮以将汇总操作从汇总平均。单击Edit Summary对话框中的OK按钮返回到交叉表专家,其中总和和平均总销售额将列在汇总字段中,然后单击确定按钮确认这些更改。
  4. 您现在将在每个摘要单元格中包含一个交叉表,其中包含一个额外的摘要列和两个汇总值。使用Ctrl-Click选择组列中的所有平均值,右键单击并选择格式化对象...并检查抑制选项。点击确定 - 这些值现在应该变灰。
  5. 使用Ctrl-Click,右键单击并选择Format Objects ...并选中Suppress选项,选择Grand Total列中的所有总值(但不是平均值)。点击确定 - 这些值现在应该变灰。
  6. 编辑盛大Total列的文本框并将其更改为Average。
  7. 预览报告 - 您现在应该在总销售额的右侧有一列平均总销售额。

交叉表真的是不是水晶的最强点。

+4

“交叉表实际上不是水晶的最强点。” ---希望我能把这个表达给我的老板! – Cimplicity 2012-01-26 16:07:15

+0

乐于助人,谢谢。我认为没有办法让虚拟“总数”出现在其他列之前,而实际总数保持在右侧?我实际上试图在左侧列出雇员+ SSN,分两栏。 (已经在一列中使用字符串连接工作,但这不利于Excel导出。)我可以使用“max”函数“提取”SSN,但我可以告诉所有列(真实或假的)将一起出现。 – 2012-12-22 03:32:43