将 PowerPivot 数据模型升级到 Excel 2013 或 Excel 2016
Applies ToExcel 2016 Excel 2013 SharePoint Server 2013 SharePoint Server 2013 企业版

“此工作簿具有使用以前版本的 Power Pivot 外接程序创建的 Power Pivot 数据模型。 需要使用 Microsoft Excel 2013 中的 Power Pivot “升级此数据模型。

看起来熟悉吧? 这意味着你在 Excel 2013 或更高版本中打开了 Excel 2010 工作簿,该工作簿包含使用早期版本的 Power Pivot 加载项生成的嵌入式 Power Pivot 数据模型。 尝试在 Excel 2010 工作簿中 插入 Power View 工作表 时,可能会看到此消息。

在 Excel 2013 或Excel 2016中,数据模型是工作簿中不可或缺的一部分。 此消息使你知道嵌入 Power Pivot 数据模型需要升级,然后才能在 Excel 2013 或 Excel 2016 中对数据进行切片、钻取和筛选。

  1. 升级之前,请检查升级期间导致问题的已知问题

  2. 现在保存文件的副本,以防以后需要以前的版本。 升级后,工作簿将仅在 Excel 2013 或更高版本中工作。 详细信息:升级模型中的差异

  3. 在 Microsoft Excel 外接程序中启动 Power Pivot

  4. 单击“Power Pivot”>“管理”以开始升级。

    PowerPivot 功能区中的“管理”按钮

  5. 确认升级通知。

    消息是“此工作簿具有使用以前版本的 Power Pivot 加载项创建的 Power Pivot 数据模型。 需要使用 Microsoft Excel 2013 中的 Power Pivot 升级此数据模型。

    单击“确定”以关闭该消息。

  6. 升级数据模型。 升级后,不能再在早期版本的 Power Pivot 中处理该工作簿。

    消息以“工作簿包含使用以前版本的 Power Pivot 创建的数据模型”开头。 结尾是“是否要升级工作簿?”

    单击“确定”升级工作簿。

  7. 保存并重新加载工作簿。 此步骤会锁定升级期间所做的更改。 一旦您保存工作簿,则无法回滚。 重新加载应只需要几秒钟,具体取决于工作簿的大小和位置。

    消息开头为“工作簿升级已成功完成,但是 Excel 仍处于兼容模式。”

    单击“”以重新加载工作簿。

升级现在完成。 如果您在升级期间获得其他消息,则升级可能失败或部分成功。 在某些情况下,需要手动更改工作簿或数据模型,以完全升级到 Excel 2013 或 Excel 2016。 阅读本文中的以下部分以了解详细信息。

本文内容

已知问题

删除或重建不再与 Excel 中的源表相关联的链接表

过期和孤立的表无法与模型其余部分一起升级,导致数据被删除或无法使用。 您可以通过确保现有链接表与 Excel 中的现有源表相关联来避免此问题。

  1. 在 Power Pivot for Excel 2010 中,单击 Power Pivot 窗口中的一个链接表。

    链接表图标

  2. 在功能区上单击“链接表”。

    指明 Excel 表的链接功能区

  3. 验证“Excel 表”是否指向现有表。 如果表已在 Excel 中重命名,请单击“Excel 表”中的向下箭头以选择重命名的表。

  4. 单击“转到 Excel 表”以验证链接表是否解析为 Excel 中的源数据表。

  5. 如果“Excel 表”为空,请执行下列操作之一:

除非以下问题也适用,否则您已准备就绪,可升级工作簿。

删除查询 drillthrough 表

另一个升级问题仅适用于基于支持钻取操作的 Analysis Services 多维数据集的 Power Pivot 数据模型。 如果工作簿包含钻取查询表,升级起初将显示为成功,但是随后每当您单击数据透视表中的字段时,系统会返回升级错误。

  1. 在 Power Pivot for Excel 2010 中,找到工作簿中的任意钻取查询表。

    当您右键单击一个度量值并选择“显示详细信息”时,将在工作簿中创建一个钻取查询表。 所生成的表将在工作簿中显示为单独的工作表。 第一行开头为“返回的数据为...”。

    查询钻取表

  2. 删除包含钻取查询表的每个工作表。 您可以在升级后重新创建它们。

  3. 保存工作簿。

  4. 升级工作簿。

  5. 如果需要,您可以重新创建钻取查询表。 右键单击数据透视表中的计算字段,然后单击“显示详细信息”。 将在单独的工作表中创建钻取查询表。

取消密码保护

还包含数据模型的受密码保护的工作簿将升级失败并且出现此错误:

“无法升级此工作簿中的数据模型。”

若要解决此问题,请在升级之前删除密码。

  1. 在 Excel 2013 或 Excel 2016 中打开工作簿。

  2. 单击“文件”>“信息”>“保护工作簿”>“用密码进行加密”。

  3. 清除星号,然后单击“确定”。

  4. 保存工作簿。

  5. 单击“Power Pivot”>“管理”以重新开始升级。

  6. 重新向工作簿添加密码保护。

删除受限访问

限制打印、编辑或复制的工作簿数据模型将升级失败并且出现此错误:

“无法升级此工作簿中的数据模型。”

若要解决此问题,请在升级之前删除限制。

  1. 在 Excel 2013 或 Excel 2016 中打开工作簿。

  2. 单击“文件”>“信息”>“保护工作簿”>“限制访问”。

  3. 选择“无限制访问”以删除限制。

  4. 将工作簿保存在 Excel 中。

  5. 单击“Power Pivot”>“管理”以重新开始升级。

  6. 重新向工作簿添加访问限制。

升级消息中提及模型中的特定列

当升级期间发生错误,并且错误消息指明哪些字段导致问题时,请按照下列步骤操作:

  1. 在 Excel 2013 或 Excel 2016中,转到数据透视表或包含升级遇到问题的字段的报表。

  2. 从数据透视表或报表中删除这些字段。 “字段列表”将继续列出这些字段;它们只是不会出现在报表中。

  3. 保存并关闭工作簿。

  4. 重新打开工作簿。

  5. 单击“Power Pivot”>“管理”以重新开始升级。

  6. 假设升级成功,请将这些字段添加回数据透视表或报表。

无法更新升级的工作簿中的数据源连接

您先前在 Excel 2010 中创建了一个工作簿,该工作簿中包含到外部数据源的连接。 在 Excel 2013 或 Excel 2016 中打开工作簿。 当您尝试更改工作簿中的数据透视表时,系统向您显示一条消息,提示您必须更新数据透视表。 您尝试更新数据透视表,却看到以下消息:

“Excel 无法获取有关此多维数据集的必要信息。 多维数据集可能已在服务器上重新组织或更改。 请联系 OLAP 多维数据集管理员,并在必要时设置新的数据源以连接到多维数据集。

当您尝试编辑现有连接时,可以看到数据模型的名称,但不能修改数据源。

问题

与数据源的连接不再有效,需要更新它,但无法在 Excel 2013 或 Excel 2016 中更新它。

解决方案

  1. 在带有 Power Pivot 加载项的 Excel 2010 中打开工作簿。

  2. 通过“Power Pivot”选项卡 >“管理数据模型”打开 Power Pivot 窗口。

  3. 在 Power Pivot 窗口中,单击“开始”>“连接”>“现有连接”。

  4. 选择当前的数据库连接,单击“编辑”。

  5. 在“编辑连接”对话框中,单击“浏览”找到类型相同但名称或位置不同的其他数据库。

  6. 保存并关闭工作簿。

  7. 在 Excel 2013 或 Excel 2016 中打开工作簿。

返回页首

完成部分升级

在大多数情况下,工作簿升级应会顺利进行,但有时需要进一步更改才能完成操作。 在此部分中,您将了解如何响应表明部分或不完整升级的特定错误。 工作簿已升级但缺少某些功能。

KPI 图像丢失

如果 KPI 图像(彩色或图形图标)丢失,请从“字段列表”的“”区域中删除 KPI,然后再次添加它。

DAX 计算升级错误:无法正确升级此工作簿...

在工作簿正常工作之前,一些 DAX 计算要求进行手动更改。 如果 DAX 表达式或查询与 Excel 2013 不兼容,则工作簿仅部分升级。 您将看到此消息:

“无法正确升级此工作簿。 保存可能会导致一些 Excel 数据功能无法正常工作。 有关详细信息,请访问:http://go.microsoft.com/fwlink/?LinkId=259419

我们收到的错误如下:无法查询列“<表>[<列名>]”的内部支持结构,因为它们依赖于未处理的列、关系或度量值。 请刷新或重新计算模型。”

如果收到此错误消息(可能收到多次),请确保注意指明了哪些表和列,以便您可以直接转到这些表。 您需要编辑每个 DAX 表达式:

注意: 如果要求您允许 Power Pivot 进行保存,请关闭并重新打开工作簿,然后单击“”。

  1. 在 Power Pivot 窗口中,打开消息中提及的表。

  2. 单击具有错误图标和 #ERROR 值的列。 您应该能在编辑栏中看到 DAX 表达式。

  3. 查找以下已知 DAX 兼容性问题:

    不再允许表示为没有值的双引号 (“”) 的空值。 用零替换双引号。

    LOOKUPVALUE、CONTAINS 或 SWITCH 试图比较不兼容的值类型。 您可能需要在参数中指定 [Type],或确保值类型为数字、字符串或布尔值。 如果需要转换其中一个值,您可以使用 VALUE 或 FORMAT 函数。

当您修复 DAX 表达式时,更多错误可能继续出现在 Excel 中。 如果您无法编辑公式,请切换回 Excel 以查看是否有错误阻止进一步操作。 单击“确定”关闭错误,返回到 Power Pivot 继续工作。

在修复 DAX 计算并且错误消息不再显示后,可认为工作簿已完全升级。

引用“Power Pivot Data”的数据透视表函数不再有效

用于从以前版本中指定到 Power Pivot 模型的连接的 Excel 多维数据集函数必须手动更新为新的模型名称“ThisWorkbookDataModel”。

以前版本

Excel 2013

=CUBEVALUE("Power Pivot Data",[Measures].[TotalSales])

=CUBEVALUE("ThisWorkbookDataModel",[Measures].[TotalSales])

  1. 在 Excel 中的每个工作表上,单击“公式”>“显示公式”以显示每个工作表中使用的计算。

  2. 对于用来指定连接的 Excel 多维数据集函数,请查找“Power Pivot Data”。

  3. 将“Power Pivot Data”替换为“ThisWorkbookDataModel”。

  4. 保存工作簿。

返回页首

数据删除:升级时删除模型中的数据

“升级无法升级下列链接表<表名>。 这些表已从模型中删除。

在特殊情况下,升级期间会从模型中删除数据。 当您的模型中具有无法跟踪到相同工作簿中的关联表的孤立表,因为源表已经删除或重命名时,会发生数据删除。

升级成功,但链接表已不存在

链接表是指您在工作表中创建然后添加到数据模型,以便您可以将其关联到其他表并添加 DAX 计算的表格。 如果工作簿中不再存在源表,升级将删除链接表。

以下是方案:您在 Excel 中创建或导入了一个表,并在 Power Pivot Data 中将它添加为链接表,使之成为数据模型的一部分,然后删除该表所基于的原始表。 即使 Excel 表已不存在,模型仍然会保留链接表。

以后,当您尝试升级到 Excel 2013 工作簿时,会发生以下错误。

“升级无法升级下列链接表<表名>。 这些表已从模型中删除。

如果可能,请取消升级,以便您可以修改模型或创建备份,以防以后您需要引用表:

  1. 单击“确定”关闭消息“升级无法升级以下链接表”。

  2. 当系统询问您是否保存、关闭并重新打开工作簿时,请单击“”。

  3. 在 Excel 2013 中关闭文件而不保存它。

  4. 在 Excel 2010 中打开工作簿并更正链接表问题:

    1. 不再需要链接表? 将其从模型中删除或在 Excel 2013 中重新开始升级,并让升级为您删除该表。

    2. Excel 表已重命名但链接表未重命名? 按本页顶部的步骤 1 中所述,更新 Power Pivot 中的连接信息。

    3. 链接表需要保留下来,因为它在计算或数据透视表中使用,但是原始 Excel 表不见了? 在 Excel 中重新创建源表并更新链接:

      • 在 Power Pivot 窗口中复制链接表中的行。

      • 将各行粘贴到 Excel 工作表。

      • 将行的格式设置为表格。

      • 为该表命名。

      • 返回到 Power Pivot 窗口。

      • 单击“链接表”>“Excel 表”,然后选择您刚刚创建的表。

      • 保存文件。

  5. 进行更正后,在 Excel 2013 中打开该文件。

  6. 通过单击“Power Pivot”>“管理”开始再次升级。

如果您已经保存工作簿,则无法将其回滚到以前版本。 您需要从头开始重新创建链接表。 详细信息:使用链接表将工作表数据添加到数据模型

返回页首

升级模型中的差异

在大多数情况下,升级后的工作簿与以前版本相同。 但是,较新版本中有一些更改需要提及。

切片器和列说明不再显示在字段列表中

在早期版本中,数据透视表字段列表将列或字段说明显示为工具提示。 在 Excel 2013 或更高版本中,字段列表不支持工具提示。 模型中存在的任何列说明在 Excel 中的数据可视化中将被忽略。

支持切片器,但现在以不同的方式创建它们。 字段列表不提供用于创建切片器的选项。

在早期版本的 Excel 和 Power Pivot 中无法处理升级后的工作簿

在 Excel 2013 之前,Power Pivot 加载项有两个早期版本。 两个版本都专门用于 Excel 2010。 这些版本包括:

  • SQL Server 2008 R2 Power Pivot for Excel

  • SQL Server 2012 Power Pivot for Excel 2010

将数据模型升级到 Excel 2013 或 Excel 2016 后,可以打开工作簿,但不能与 Excel 2010 中基于模型的数据透视报表进行交互或编辑。 在 Excel 2010 中打开 Excel 2013 或Excel 2016工作簿数据模型时,如果单击切片器、更改筛选器或将新字段拖动到数据透视表,将收到以下错误:

“数据源初始化失败。”

此错误是由数据交互(例如,单击切片器)生成了一个发送到数据模型(该模型是数据透视表的数据源)的查询而导致的。 由于该数据模型在 Excel 2010 中不再有效,您将获得一个数据源初始化错误而不是数据交互。

假设您现在尝试在 Power Pivot 窗口中打开数据模型。 模型将无法打开,并出现以下错误:

“此工作簿包含在较新版本的 Excel 中创建的 Excel 数据模型。 你可以在较旧版本的 Excel 中打开此工作簿,但是当该工作簿与 Excel 数据模型共存时,将无法加载或使用 Power Pivot 。

没有解决方法;只有升级。 升级之前,请与同事确认以确保你们同时升级到 Excel 2013。 此外,如果你的组织计划使用 Excel 2010 和 Excel 2013 或并行Excel 2016,你可能还希望暂时保留工作簿的单独版本。

详细信息: Power Pivot 版本兼容性

返回页首

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。