在有关课程出勤率的KPI仪表板中,我有一个包含课程名称的下拉列表。用户选择课程,宏必须在切片器(连接到多维数据集)中选择所选择的课程。
使用宏记录器时,我看到记录器使用一种索引来选择用户想要的课程,而不是名称(在我的示例中为&[18]):
ActiveWorkbook.SlicerCaches("Slicer_Course2").VisibleSlicerItemsList = Array("[Course].[Course].&[18]")
Run Code Online (Sandbox Code Playgroud)
我想浏览不同的切片器项目,并且仅根据课程名称选择与我的下拉列表中的用户选择相对应的项目。例如,如果用户选择课程“切片器简介”:
Sub TestSclicer()
Dim i
ActiveWorkbook.SlicerCaches("Slicer_Courses2").ClearManualFilter
For i = 1 To ActiveWorkbook.SlicerCaches("Slicer_Courses2").SlicerItems.Count
If ActiveWorkbook.SlicerCaches("Slicer_Courses2").SlicerItems(i).Name = "Introduction To Slicer" Then
ActiveWorkbook.SlicerCaches("Slicer_Courses2").SlicerItems(i).Selected = True
Else
ActiveWorkbook.SlicerCaches("Slicer_Courses2").SlicerItems(i).Selected = False
End If
Next
End Sub
Run Code Online (Sandbox Code Playgroud)
错误 ActiveWorkbook.SlicerCaches("Slicer_Courses2").SlicerItems.Count提示
应用程序定义的对象定义错误
任何人都可以告诉我Excel 2010中的PowerView和Excel 2013中的PowerView有什么区别吗?我已经尝试寻找差异但找不到我需要的信息.
我的表包含单个卖家的一堆重复的销售信息,我基本上创建了一个列和一个度量,用于标记用户他们拥有的视图是否包含重复的销售信息。
这是我的表格的一个非常简单的示例
SalesManager SalesPersonnel Acccount Product Revenue
SalesManager1 SalesPersonnel1 Acccount_A Product_A 100000
SalesManager1 SalesPersonnel1 Acccount_B Product_C 100000
SalesManager1 SalesPersonnel3 Acccount_A Product_A 100000
SalesManager2 SalesPersonnel3 Acccount_B Product_C 100000
SalesManager1 SalesPersonnel2 Acccount_B Product_C 100000
SalesManager1 SalesPersonnel2 Acccount_B Product_C 100000
SalesManager4 SalesPersonnel4 Acccount_B Product_A 100000
SalesManager4 SalesPersonnel4 Acccount_A Product_D 100000
SalesManager4 SalesPersonnel5 Acccount_A Product_B 100000
SalesManager4 SalesPersonnel5 Acccount_A Product_A 100000
Run Code Online (Sandbox Code Playgroud)
然后我创建了一个专栏
=Acccount&Product&Revenue
Run Code Online (Sandbox Code Playgroud)
这是一个极其简化的示例,在我的真实工作簿中,我必须合并 30 多个列。
和一个措施
= if(CALCULATE(DISTINCTCOUNT([ConsldforDupeCheck]))=COUNTROWS(Table),"","*PossibleDoubleCountError*"
Run Code Online (Sandbox Code Playgroud)
这一直工作得很好,除了我发现组合了一堆列的计算列导致文件大小加倍......
我能想到的唯一解决方案是如果我可以将计算列移动到度量中,但我想不出在多个列上使用distinctcount的方法。
这可能吗?
我有一个包含 5 个字段的表,其中一列包含以下内容:
中 高 低
如果我按升序排序,则数据按字母顺序排序:
高 低 中
在高级编辑器中,如何更改 PowerQuery 中的代码,使其排序如下:
高 中 低
我当前在编辑器中的语法是这样的:
Table.Sort(#"过滤后的行",{{"Rating", Order.Ascending}})
将 PowerPivot 和 DAX Countrows 与过滤器选项一起使用,一列具有六个可能的表达式。(优秀、良好、可接受、不好、差和空白)。发布计数,我通过将优秀和良好除以总响应来计算满意度百分比。我的问题是 countrows 函数不会将空白视为 0,从而搞砸了我的计算。我该如何解决这个问题?
我用 SharePoint 2013并且我有一个 BI 网站。
我在里面更改了我的网站名称,DNS Server但在此之后更改了我的PowerPivot Report无法打开。
我收到此错误:
This workbook cannot be opened
because it is not stored in a trusted location.
to create a trusted location,
contact your system administrator.
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个错误?
我觉得我手上有一个相对简单的问题,只是无法让它工作.让我先说一下我是DAX的新手.
请考虑以下PowerPivot数据模型:

它由Sales Records表组成,该表连接到Date查找表,以及"Daily Expenses"表."每日费用"表存储单个值,该值表示每天运行特定交易地点的平均成本.
生成数据透视表非常容易,它为我提供了每个[插入日期]每个商店的总销售额.我所追求的是DAX配方,它将计算每家商店每天的利润 - 即.总销售额减去DailyExpenses(运营成本):

从理论上讲,这应该很简单,但我对如何利用DAX行上下文感到困惑.
尝试失败:
利润:= CALCULATE(SUM(SalesInformation [SaleAmount] - DailyStoreExpenses [DailyExpense]))
利润:= CALCULATE(SUM(SalesInformation [SaleAmount] - DailyStoreExpenses [DailyExpense]),DailyStoreExpenses [StoreLocation])
利润:= SUM(SalesInformation [SaleAmount] - 相关(DailyStoreExpenses [DailyExpense])
等等
任何帮助赞赏.
我正在尝试自动化一些基于 Netsuite(我们的 ERP 软件)导出的 CSV 构建的报告。这些文件永远不会正确地直接导入到 PowerQuery 中,因为有 6 行是“标题”行。这些标题行没有正确数量的逗号,因此 PowerQuery 仅显示 1 列数据。我目前正在使用 Notepad++ 打开文件并删除这 6 行,然后将文件导入 PowerQuery。
有没有办法使用 PowerQuery 代码跳过前 6 行,以便正确读取 csv?以下是我正在使用的数据的示例。
Fake Cocoa Company LLC
"Fake Cocoa Company, LLC (Consolidated)"
Sales Order Detail - Hotel - BH
"January 1, 2016 - December 31, 2016"
"Options: Show ZerosFilters: Customer/Project (equal to FCC - Hotel Hotel ), Validated Status (not equal to Cancelled, Closed )"
Document Number ,Date ,Ship To ,Item: Description (Sales) ,Quantity ,Validated Status ,Unit Price …Run Code Online (Sandbox Code Playgroud) 我在 PowerPivot 中有一个事实表,其中包含两个唯一的列。
我想知道是否可以通过某种方式从 Excel 中“查找”该表中的数据。
作为示例,请参见下表(位于 PowerPivot 中)。
我的问题是是否可以在 UniqueID_1 列中搜索并在 UniqueID_2 中返回值,反之亦然?
我熟悉如何使用多维数据集函数进行度量,但我不知道如何返回字符串。
作为背景,该表通过 PowerQuery 进入 PowerPivot,我想检索 PowerQuery 提供的表,而不将该表写入电子表格(这是我现在正在做的解决方法)。
有什么巧妙的想法吗?
最好的,
本

编辑:
感谢您的建议和帖子。我不确定这是否完全解决了我的问题。
只是为了澄清,我并不是在寻找查找数据的解决方案: - (a) 通过从另一个 PowerPivot 表查询来驻留在 PowerPivot 表中(可以使用 PowerPivot 中的“Related”或“LookupValue”函数来完成) - (b)通过从另一个 Excel 单元格查询驻留在 Excel 表中(可以使用 Excel 中的“查找”或“索引”/“匹配”功能来完成)
我正在寻找一种查找数据的方法: - (c) 通过从 Excel 单元格查询来驻留在 PowerPivot 表中。
下面,我添加了一个示例以使其更加清楚。我尝试通过将日期值与 Excel-Match 功能与 PowerPivot 表中的日期列进行匹配来尝试 (c)。
我正在寻找的解决方案可以返回任何数据类型,而不仅仅是数字(这可以通过Excel公式“CubeValue”来完成)
我添加了屏幕截图:i) 来自 PowerPivot 表,以显示表结构和内容 ii) 来自我尝试用来连接到 PowerPivot 表的 Excel 公式(不起作用!)
期待任何建议!
最好的,本


我正在尝试在 Excel 中创建一个 CUBESET 函数,但我不知道如何使用同一维度内的多个条件过滤它。这是我迄今为止使用一个标准所做的工作。
示例 1:
=CUBESET("ThisWorkbookDataModel","{[Facebook].[Bucket (C)].[All].[DPA]*[Facebook].[AudienceType (C)].children}","Bucket")
Run Code Online (Sandbox Code Playgroud)
示例 2:在单元格 C3 中包含日期
=CUBESET("ThisWorkbookDataModel","{[Facebook].[Week End].[All].["&TEXT($C$3,"m/d/yyyy")&"]*[Facebook].[Campaign (C)].children}","Campaign Breakout - Weekly")
Run Code Online (Sandbox Code Playgroud)
这就是我试图用两个标准来做的,但没有运气。
示例 1:
=CUBESET("ThisWorkbookDataModel","FILTER( [Facebook].[AudienceType (C)].children,[Facebook].[Week End].[All].["&TEXT($C$3,"m/d/yyyy")&"] && [Facebook].[Bucket (C)].[All].[DPABroadAudience])","Bucket")
Run Code Online (Sandbox Code Playgroud)
示例 2:
=CUBESET("ThisWorkbookDataModel","FILTER( [Facebook].[AudienceType (C)].children,AND([Facebook].[Week End].[All].["&TEXT($C$3,"m/d/yyyy")&"],[Facebook].[Bucket (C)].[All].[DPABroadAudience]))","Bucket")
Run Code Online (Sandbox Code Playgroud)
示例 3:
=CUBESET("ThisWorkbookDataModel","{[Facebook].[AudienceType (C)].children *[Facebook].[Week End].[All].["&TEXT($C$3,"m/d/yyyy")&"] * [Facebook].[Bucket (C)].[All].[DPABroadAudience]})","Bucket")
Run Code Online (Sandbox Code Playgroud)
顺便说一句 - 虽然我现在只需要两个标准,但很高兴看到一个适用于 2 个以上标准的解决方案。
powerpivot ×10
excel ×9
dax ×3
powerquery ×3
csv ×1
dashboard ×1
excel-2016 ×1
lookup ×1
mdx ×1
powerview ×1
sql ×1
vba ×1