在 Excel 中使用联机分析处理 OLAP 数据透视表时,可以创建命名集,这是一项灵活的功能,可用于:
-
对可重复使用的常见项集进行分组,即使数据中不存在这些集合也是如此。
-
以早期版本的 Excel 中无法实现的方式组合来自不同层次结构的项目,通常称为非对称报告。
-
使用自定义多维表达式 (MDX) 创建命名集,MDX) 是 OLAP 数据库的查询语言,提供类似于工作表公式的计算语法。
如果不熟悉多维表达式 (MDX) 查询语言,可以创建基于数据透视表行或列中项的命名集。 若要详细了解 MDX 查询语言,请参阅 查询多维数据。
如果熟悉 MDX 查询语言,可以使用 MDX 创建或修改命名集。
您要做什么?
基于行项或列项创建命名集
-
单击要为其创建命名集的 OLAP 数据透视表。
这将显示 数据透视表工具,并添加 “选项” 和“ 设计 ”选项卡。
-
在“选项”选项卡上的“计算”组中,单击“字段、项 & 集”,然后单击“基于行项创建集”或“基于列项创建集”。
将显示“ 新建集 ”对话框。 如果需要,可以通过拖动对话框右下角的大小控点来调整此对话框的大小。
-
在“ 设置名称 ”框中,键入要用于该集的名称。
-
若要指定要包含在命名集中的行,请执行以下一项或多项操作:
-
若要从项目列表中删除行,请单击要选择的行左侧的区域,然后单击“ 删除行”。
-
若要向项目列表添加新行,请单击要在下面添加新行的行左侧的区域,然后单击“ 添加行”。
-
若要创建项目的副本,请单击要复制的行左侧的区域,然后单击“ 复制行”。
-
若要将项目移动到其他位置,请单击要移动的行左侧的区域,然后使用 向上 和 向下 箭头将其移动到相应的位置。
-
-
默认情况下,不同级别的项将显示在层次结构中的单独字段中,命名集将替换行或列区域中的当前字段。
-
若要在与其他项目相同的字段中显示这些项目,请清除“在单独的字段中显示不同级别的项目检查框。
-
若要保留行或列区域中显示的当前字段,请清除“用新集替换当前行区域中的字段”或“将列区域中当前位于列区域中的字段替换为新集检查框。 单击“ 确定”时,该集不会显示在数据透视表中,但它将在 数据透视表字段列表中提供。
-
-
单击“ 确定” 以创建命名集。
注意:
-
若要在关闭对话框后撤消所有操作,请单击“快速访问工具栏”上的“ 撤消 ”。
-
不能对命名集应用任何类型的筛选。
-
使用 MDX 创建命名集
重要: 使用 MDX 创建命名集或修改现有命名集的 MDX 定义时,任何其他修改只能使用 MDX 来完成。
-
单击要为其创建自定义命名集的 OLAP 数据透视表。
-
在“选项”选项卡上的“计算”组中,单击“字段”、“项”、“& 集”,然后单击“管理集”。
将显示“ 设置管理器 ”对话框。 如果需要,可以通过拖动对话框右下角的大小控点来调整此对话框的大小。
-
单击“ 新建”,然后单击“ 使用 MDX 创建集”。
-
在“ 设置名称 ”框中,键入要用于该集的名称。
-
若要为命名集设置 MDX 定义,请执行以下任一操作:
-
在“ 设置定义 ”框中,键入或粘贴复制的 MDX 定义。
-
在“ 字段和项 ”选项卡上,选择要包含的字段列表项,然后单击“ 插入”。
还可以将字段列表项拖动到 “设置定义 ”框中,或双击字段列表项。
可用字段列表条目
字段列表条目
使用 Adventure Works 多维数据集生成的 MDX 示例
维度
[产品]
属性层次结构 (包括所有成员)
[Product]。[类别]
属性层次结构级别 (不包括所有成员)
[Product]。[Category]。[类别]
属性层次结构中的成员
[Product]。[Category].&[4]
用户层次结构
[Product]。[产品类别]
用户层次结构级别
[Product]。[产品类别]。[类别]
用户层次结构中的成员
[Product]。[产品类别]。[Category].&[4]
度量
[度量值]。[互联网销售金额]
计算度量值
[度量值]。[Internet 与父产品的比率]
命名集
[核心产品组]
KPI 值
KPIValue (“产品毛利率)
KPI 目标
KPIgoal (“产品毛利率”) ,
KPI 状态
KPIStatus (“产品毛利率”)
KPI 趋势
KPI 趋势 (“产品毛利率”)
用户层次结构中的成员属性
[Product]。[产品类别]。属性 (“类”)
属性层次结构中的成员属性
[Product]。[Product]。属性 (“Class”)
-
在“ 函数 ”选项卡上,从要使用的可用 MDX 函数中选择一个或多个函数,然后单击“ 插入”。 Analysis Services 支持 MDX 函数;它们不包括 VBA 函数。
函数参数放置在<< >>) (v 形字符内。 可以通过单击占位符参数,然后键入要使用的有效名称来替换它们。
MDX 函数的示例
ADDCALCULATEDMEMBERS ( «Set» )
AGGREGATE ( «Set»[, «Numeric Expression»] )
«Level»。ALLMEMBERS
«Hierarchy»。ALLMEMBERS
祖先 ( «成员» «Level» )
祖先 ( «成员», «距离» )
祖先 ( «成员», «Distance» )
祖先 ( «Member», «Level» )
ASCENDANTS ( «Member» )
AVG ( «Set»[, «Numeric Expression»] )
AXIS ( «Numeric Expression» )
BOTTOMNCOUNT ( «Set», «Count»[, «Numeric Expression»] )
BOTTOMPERCENT ( «Set», «Percentage», «Numeric Expression» )
BOTTOMSUM ( «Set», «Value», «Numeric Expression» ) ...
-
-
若要测试新的 MDX 定义,请单击“ 测试 MDX”。
-
默认情况下,不同级别的项将显示在层次结构中的单独字段中,字段是有序的,并且自动删除重复条目 (因为 HIERARCHIZE 和 DISTINCT 已添加到集) ,命名集将替换行或列区域中的当前字段。
-
若要在与其他项目相同的字段中显示这些项目,请清除“在单独的字段中显示不同级别的项目检查框。
-
若要更改默认层次结构并保留重复条目,请清除“自动排序并从设置检查中删除重复项”框。
-
若要保留行或列区域中显示的当前字段,请清除“用新集替换当前行区域中的字段”或“将列区域中当前位于列区域中的字段替换为新集检查框。 单击“ 确定”时,该集不会显示在数据透视表中,但它将在 数据透视表字段列表中提供。
-
-
如果连接到 SQL Server 2008 Analysis Services 多维数据集,则默认情况下会创建一个动态命名集。 每次更新时,此命名集都会自动重新计算。
-
若要防止每次更新时重新计算命名集,请清除“每次更新检查重新计算集”框。
-
-
单击“ 确定” 以创建命名集。
注意:
-
若要在关闭对话框后撤消所有操作,请单击“快速访问工具栏”上的“ 撤消 ”。
-
不能对命名集应用任何类型的筛选。
-
编辑或删除命名集
-
单击包含要编辑或删除的命名集的 OLAP 数据透视表。
-
在“选项”选项卡上的“计算”组中,单击“字段”、“项”、“& 集”,然后单击“管理集”。
将显示“ 设置管理器 ”对话框。 如果需要,可以通过拖动对话框右下角的大小控点来调整此对话框的大小。
-
选择要编辑或删除的集。
-
执行下列操作之一:
-
若要编辑选定的命名集,请单击“ 编辑”,然后进行所需的更改。
-
若要删除选定的命名集,请单击“ 删除”,然后单击“ 是 ”进行确认。
-