excel函数汇总多维数据集函数excel帮助导出.docx
- 文档编号:11041721
- 上传时间:2023-02-24
- 格式:DOCX
- 页数:13
- 大小:22.02KB
excel函数汇总多维数据集函数excel帮助导出.docx
《excel函数汇总多维数据集函数excel帮助导出.docx》由会员分享,可在线阅读,更多相关《excel函数汇总多维数据集函数excel帮助导出.docx(13页珍藏版)》请在冰豆网上搜索。
excel函数汇总多维数据集函数excel帮助导出
十、多维数据集函数
1、CUBEKPIMEMBER
返回重要性能指示器(KPI)属性,并在单元格中显示KPI名称。
KPI是一种用于监控单位绩效的可计量度量值,如每月总利润或季度员工调整。
注释 只有在工作簿连接到MicrosoftSQLServer2005AnalysisServices或更高版本的数据源时才支持CUBEKPIMEMBER函数。
语法
CUBEKPIMEMBER(connection,kpi_name,kpi_property,caption)
Connection 是到多维数据集的连接的名称的文本字符串。
Kpi_name 是多维数据集中KPI名称的文本字符串。
Kpi_property 是返回的KPI组件,可以是下列类型的值之一:
整型
枚举常量
说明
1
KPIValue
实际值
2
KPIGoal
目标值
3
KPIStatus
KPI在特定时刻的状态
4
KPITrend
走向值的度量
5
KPIWeight
分配给KPI的相对权重
6
KPICurrentTimeMember
KPI的临时根据内容
如果您为kpi_property指定KPIValue,则只有kpi_name显示在单元格中。
Caption 是显示在单元格中的可选文本字符串,而不是kpi_name和kpi_property。
注解
当CUBEKPIMEMBER函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
要在计算中使用KPI,请将CUBEKPIMEMBER函数指定为CUBEVALUE函数中的member_expression参数。
如果连接名称不是存储在工作簿中的有效工作簿连接,则CUBEKPIMEMBER函数将返回错误值#NAME?
。
如果联机分析处理(OLAP)服务器未运行、不可用或返回错误消息,则CUBEKPIMEMBER函数返回错误值#NAME?
。
当kpi_name或kpi_property无效时,CUBEKPIMEMBER返回错误值#N/A。
CUBEKPIMEMBER在以下情况下可能返回错误值#N/A:
如果您在共享连接时引用数据透视表中的基于会话的对象,如计算成员或命名集,并且该数据透视表被删除了或者您将该数据透视表转换为公式(方法是:
在“选项”选项卡上的“工具”组中,单击“OLAP工具”,然后单击“转换为公式”)。
示例
=CUBEKPIMEMBER("Sales","MySalesKPI",1)
=CUBEKPIMEMBER("Sales","MySalesKPI",KPIGoal,"SalesKPIGoal")
2、CUBEMEMBER
返回多维数据集中的成员或元组。
用来验证成员或元组存在于多维数据集中。
语法
CUBEMEMBER(connection,member_expression,caption)
Connection 是到多维数据集的连接的名称的文本字符串。
Member_expression 是多维表达式(MDX)的文本字符串,用来计算出多维数据集中的唯一成员。
此外,也可以将member_expression指定为单元格区域或数组常量的元组。
Caption 是显示在多维数据集的单元格(而不是标题)中的文本字符串(如果定义了一个文本字符串的话)。
当返回元组时,所用的标题为元组中最后一个成员的文本字符串。
注解
当CUBEMEMBER函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
如果将CUBEMEMBER函数用作另一个CUBE函数的参数,该CUBE函数将使用标识成员或元组的MDX表达式,而不是在CUBEMEMBER函数的单元格中显示的值。
如果连接名称不是存储在工作簿中的有效工作簿连接,则CUBEMEMBER函数返回错误值#NAME?
。
如果联机分析处理(OLAP)服务器未运行、不可用或返回错误消息,则CUBEMEMBER函数返回错误值#NAME?
。
如果元组中至少有一个元素是无效的,则CUBEMEMBER函数返回错误值#VALUE!
。
如果member_expression的长度大于255个字符(这是函数中参数的长度限制),则CUBEMEMBER函数将返回错误值#VALUE!
。
要使用长度大于255个字符的文本字符串,请在单元格中输入该文本字符串(对于单元格而言,该限制是32,767个字符),然后使用单元格引用作为参数。
当遇到下列情况时,CUBEMEMBER函数返回错误值#N/A:
member_expression语法不正确。
MDX文本字符串指定的成员在多维数据集中不存在。
由于指定的值不交叉,元组无效。
(当多个元素来自同一层次结构时会发生此情况。
)
集合至少包含一个其维数与其他成员都不同的成员。
CUBEMEMBER在以下情况下可能返回错误值#N/A:
如果您在共享连接时引用数据透视表中的基于会话的对象,如计算成员或命名集,并且该数据透视表被删除了或者您将该数据透视表转换为公式(方法是:
在“选项”选项卡上的“工具”组中,单击“OLAP工具”,然后单击“转换为公式”)。
示例
=CUBEMEMBER("Sales","[Time].[Fiscal].[2004]")
=CUBEMEMBER($A$1,D$12)
=CUBEMEMBER("Sales",(B4,C6,D5),"SalesFor2004")
=CUBEMEMBER("xlextdat8FoodMart2000Sales","([Product].[Food],[Time].[1997])")
=CUBEMEMBER($A$1,C$12:
D$12)
3、CUBEMEMBERPROPERTY
返回多维数据集中成员属性的值。
用来验证某成员名称存在于多维数据集中,并返回此成员的指定属性。
语法
CUBEMEMBERPROPERTY(connection,member_expression,property)
Connection 是到多维数据集的连接的名称的文本字符串。
Member_expression 是多维数据集中成员的多维表达式(MDX)的文本字符串。
Property 是返回的属性的名称的文本字符串或对包含属性名称的单元格的引用。
注解
当CUBEMEMBERPROPERTY函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
如果连接名称不是存储在工作簿中的有效工作簿连接,则CUBEMEMBERPROPERTY函数返回错误值#NAME?
。
如果联机分析处理(OLAP)服务器未运行、不可用或返回错误消息,则CUBEMEMBERPROPERTY函数返回错误值#NAME?
。
如果member_expression语法不正确,或者member_expression指定的成员在多维数据集中不存在,则CUBEMEMBERPROPERTY函数返回错误值#N/A。
CUBEMEMBERPROPERTY在以下情况下可能返回错误值#N/A:
如果您在共享连接时引用数据透视表中的基于会话的对象,如计算成员或命名集,并且该数据透视表被删除了或者您将该数据透视表转换为公式(方法是:
在“选项”选项卡上的“工具”组中,单击“OLAP工具”,然后单击“转换为公式”)。
示例
=CUBEMEMBERPROPERTY("Sales","[Time].[Fiscal].[2004]",$A$3)
=CUBEMEMBERPROPERTY("Sales","[Store].[MyFavoriteStore]","[Store].[StoreName].[StoreSqft]")
4、CUBERANKEDMEMBER
返回集合中的第n个成员或排名成员。
用来返回集合中的一个或多个元素,如业绩最好的销售人员或前10名的学生。
语法
CUBERANKEDMEMBER(connection,set_expression,rank,caption)
Connection 是到多维数据集的连接的名称的文本字符串。
Set_expression 是集合表达式的文本字符串,如"{[Item1].children}"。
Set_expression也可以是CUBESET函数,或者是对包含CUBESET函数的单元格的引用。
Rank 是用于指定要返回的最高值的整型值。
如果rank为1,它将返回最高值;如果rank为2,它将返回第二高的值,依此类推。
要返回最高的前5个值,请使用5次CUBERANKEDMEMBER函数,每一次指定从1到5的不同rank。
Caption 是显示在多维数据集的单元格(而不是标题)中的文本字符串(如果定义了一个文本字符串的话)。
注解
当CUBERANKEDMEMBER函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
如果连接名称不是存储在工作簿中的有效工作簿连接,则CUBERANKEDMEMBER函数返回错误值#NAME?
。
如果联机分析处理(OLAP)服务器未运行、不可用或返回错误消息,则CUBERANKEDMEMBER函数返回错误值#NAME?
。
如果set_expression语法不正确,或者集合至少包含一个维数与其他成员都不同的成员,则CUBERANKEDMEMBER函数将返回错误值#N/A。
示例
=CUBERANKEDMEMBER("Sales",$D$4,1,"TopMonth")
=CUBERANKEDMEMBER("Sales",CUBESET("Sales","Summer","[2004].[June]","[2004].[July]","[2004].[August]"),3,"TopMonth")
提示 要返回最低的n个值,请使用CUBESET函数的sort_order和sort_by参数来反转集合的顺序,以便在排序后的集合中最高值成为最低值。
例如,CUBERANKEDMEMBER("Sales",$D$4,1)将返回最后一个成员,CUBERANKEDMEMBER("Sales",$D$4,2)返回倒数第二个成员,依此类推。
5、CUBESET
定义成员或元组的计算集。
方法是向服务器上的多维数据集发送一个集合表达式,此表达式创建集合,并随后将该集合返回到MicrosoftOfficeExcel。
语法
CUBESET(connection,set_expression,caption,sort_order,sort_by)
Connection 是到多维数据集的连接的名称的文本字符串。
Set_expression 是产生一组成员或元组的集合表达式的文本字符串。
Set_expression也可以是对Excel区域的单元格引用,该区域包含一个或多个成员、元组或包含在集合中的集合。
Caption 是显示在多维数据集的单元格(而不是标题)中的文本字符串(如果定义了一个文本字符串的话)。
Sort_order 是执行的排序类型(如果存在的话),可以为下列类型之一:
整型
枚举
常量
说明
Sort_by参数
0
SortNone
XX文库-让每个人平等地提升自我XX文库-让每个人平等地提升自我按当前顺序保留集合。
忽略
1
SortAscending
使用sort_by按升序对集合进行排序。
必填
2
SortDescending
使用sort_by按降序对集合进行排序。
必填
3
SortAlphaAscending
按字母升序对集合进行排序。
忽略
4
Sort_Alpha_Descending
按字母降序对集合进行排序。
忽略
5
Sort_Natural_Ascending
按自然升序对集合进行排序。
忽略
6
Sort_Natural_Descending
按自然降序对集合进行排序。
忽略
默认值为0。
对一组元组进行字母排序是以每个元组中最后一个元素为排序依据的。
有关这些不同的排序顺序的详细信息,请参阅MicrosoftOfficeSQLAnalysisServices帮助系统。
Sort_by 是排序所依据的值的文本字符串。
例如,要获得销售量最高的城市,则set_expression为一组城市,sort_by为销售量。
或者,要获得人口最多的城市,则set_expression为一组城市,sort_by为人口量。
如果sort_order需要sort_by,而sort_by被忽略,则CUBESET函数返回错误消息#VALUE!
。
注解
当CUBESET函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
如果连接名称不是存储在工作簿中的有效工作簿连接,则CUBESET函数返回错误值#NAME?
。
如果联机分析处理(OLAP)服务器未运行、不可用或返回错误消息,则CUBESET函数返回错误值#NAME?
。
如果set_expression语法不正确,或集合至少包含一个其维数与其他成员都不同的成员,CUBESET函数返回错误值#N/A。
如果set_expression的长度大于255个字符(这是函数中参数的长度限制),则CUBESET函数将返回错误值#VALUE!
。
要使用长度大于255个字符的文本字符串,请在单元格中输入该文本字符串(对于单元格而言,该限制是32,767个字符),然后使用单元格引用作为参数。
CUBESET在以下情况下可能返回错误值#N/A:
如果您在共享连接时引用数据透视表中的基于会话的对象,如计算成员或命名集,并且该数据透视表被删除了或者您将该数据透视表转换为公式(方法是:
在“选项”选项卡上的“工具”组中,单击“OLAP工具”,然后单击“转换为公式”)。
示例
=CUBESET("Finance","Order([Product].[Product].[ProductCategory].Members,[Measures].[UnitSales],ASC)","Products")
=CUBESET("Sales","[Product].[AllProducts].Children","Products",1,"[Measures].[SalesAmount]")
6、CUBESETCOUNT
返回集合中的项目数。
语法
CUBESETCOUNT(set)
Set 是MicrosoftOfficeExcel表达式的文本字符串,该表达式计算出由CUBESET函数定义的集合。
Set也可以是CUBESET函数,或者是对包含CUBESET函数的单元格的引用。
说明
当CUBESETCOUNT函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
示例
=CUBESETCOUNT(A3)
=CUBESETCOUNT(CUBESET("Sales","[Product].[AllProducts].Children","Products",1,"[Measures].[SalesAmount]"))
7、CUBEVALUE
从多维数据集中返回汇总值。
语法
CUBEVALUE(connection,member_expression1,member_expression2…)
Connection 是到多维数据集的连接的名称的文本字符串。
Member_expression 是用来计算出多维数据集中的成员或元组的多维表达式(MDX)的文本字符串。
另外,member_expression可以是由CUBESET函数定义的集合。
使用member_expression作为切片器来定义要返回其汇总值的多维数据集部分。
如果member_expression中未指定度量值,则使用该多维数据集的默认度量值。
注解
当CUBEVALUE函数求值时,它会在检索到所有数据之前在单元格中暂时显示“#GETTING_DATA…”消息。
如果member_expression使用单元格引用,并且该单元格引用包含CUBE函数,则member_expression使用引用的单元格中的项目的MDX表达式,而不是显示在该引用的单元格中的值。
如果连接名称不是存储在工作簿中的有效工作簿连接,则CUBEVALUE函数返回错误值#NAME?
。
如果联机分析处理(OLAP)服务器未运行、不可用或返回错误消息,则CUBEVALUE函数返回错误值#NAME?
。
如果元组中至少有一个元素无效,则CUBEVALUE函数返回错误值#VALUE!
。
当遇到以下情况时,CUBEVALUE函数返回错误值#N/A:
member_expression语法不正确。
member_expression所指定的成员在多维数据集中不存在。
由于指定的值不交叉,元组无效。
(当多个元素来自同一层次结构时会发生此情况。
)
集合至少包含一个其维数与其他成员都不同的成员。
CUBEVALUE在以下情况下可能返回错误值#N/A:
如果您在共享连接时引用数据透视表中的基于会话的对象,如计算成员或命名集,并且该数据透视表被删除了或者您将该数据透视表转换为公式(方法是:
在“选项”选项卡上的“工具”组中,单击“OLAP工具”,然后单击“转换为公式”)。
问题:
Null值转换为零长度字符串
在MicrosoftOfficeExcel2007中,如果单元格中没有数据(由于您从未更改它或删除其内容),则该单元格包含一个空值。
在许多数据库系统中,空值被称为Null值。
空值或Null值的字面意思就是“没有值”。
但是,公式始终不会返回空字符串或Null值。
公式通常返回以下三种值中的一种:
数值、文本值(可能是零长度字符串)或者错误值(如#NUM!
或#VALUE)。
如果公式中包含连接到联机分析处理(OLAP)数据库的CUBEVALUE函数,并且对此数据库的查询的结果为Null值,Excel会将此Null值转换成一个零长度字符串,即使该公式本来将返回一个数值也是如此。
这会造成这样的情况:
某个单元格区域中既包含数字又包含零长度字符串值,而这种情况会影响其他引用该单元格区域的公式的结果。
例如,如果A1和A3包含数值,而A2包含带有返回零长度字符串的CUBEVALUE函数的公式,则以下公式会返回#VALUE!
错误:
=A1+A2+A3
为了防止发生这种情况,可以使用ISTEXT函数来测试是否存在零长度字符串,并使用IF函数将零长度字符串替换成0(零),如下面的示例所示:
=IF(ISTEXT(A1),0,A1)+IF(ISTEXT(A2),0,A2)+IF(ISTEXT(A3),0,A3)
或者,如果CUBEVALUE函数计算结果为零长度字符串,则您还可以在返回0值的IF条件中嵌套CUBEVALUE函数,如下面的示例所示:
=IF(CUBEVALUE("Sales","[Measures].[Profit]","[Time].[2004]","[AllProduct].[Beverages]")="",0,CUBEVALUE("Sales","[Measures].[Profit]","[Time].[2004]","[AllProduct].[Beverages]"))
请注意,SUM函数不需要进行这样的零长度字符串测试,因为它在计算返回值时将自动忽略零长度字符串。
示例
=CUBEVALUE("Sales","[Measures].[Profit]","[Time].[2004]","[AllProduct].[Beverages]")
=CUBEVALUE($A$1,"[Measures].[Profit]",D$12,$A23)
=CUBEVALUE("Sales",$B$7,D$12,$A23)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- excel 函数 汇总 多维 数据 帮助 导出