Excel DAX - 更新数据模型中的数据

DAX用于计算Excel Power Pivot中数据模型中的数据. DAX可以有效地处理数据建模和报告活动.但是,这需要不时更新数据模型中的数据以反映当前数据.

您可以将外部数据源中的数据导入工作簿的数据模型中通过建立数据连接.您可以随时更新来自源的数据.如果从关系数据库获取包含每天更新数次的实时销售信息或数据源的数据,此选项很方便.

数据模型中更新数据的不同方法

您可以通过以下方式更新数据模型中的数据 :

  • 刷新数据数据模型不时.

  • 对数据源进行更改,例如连接属性.

  • 在数据模型中更新数据后源数据已更改.

  • 过滤数据以有选择地从数据源中的表中加载行.

刷新数据模型中的数据

除了从现有源获取更新数据外,每当您更改源数据的模式时,都需要刷新工作簿中的数据.这些更改可以包括添加列或表,或更改导入的行.

请注意,添加数据,更改数据或编辑过滤器始终会触发重新计算依赖于此的DAX公式数据源.有关详细信息,请参阅"重新计算DAX公式"一章.

数据模型中有两种类型的数据刷新 :

手动刷新

如果选择手动刷新选项,则可以随时手动刷新数据模型中的数据.您可以刷新所有数据(默认值),也可以手动选择要刷新单个数据源的表和列.

自动或预定刷新

如果已将工作簿发布到支持PowerPivot的PowerPivot库或SharePoint站点,则您或SharePoint管理员可以创建自动更新工作簿中数据的计划.在这种情况下,您可以在服务器上安排无人值守数据刷新.

手动刷新现有数据源

您可以手动刷新数据时间,如果您需要更新现有数据源中的数据或获取最新数据以设计新的DAX公式.您可以刷新单个表,共享相同数据连接的所有表或数据模型中的所有表.

如果已从关系数据源(如SQL Server和SQL Server)导入数据Oracle,您可以在一个操作中更新所有相关表.将新数据或更新数据加载到数据模型中的操作通常会触发重新计算DAX公式,这两者都可能需要一些时间才能完成.因此,在更改数据源或刷新从数据源获取的数据之前,您应该了解潜在的影响.

刷新单个表或所有表中的数据数据模型,执行以下操作;

  • 单击Power Pivot窗口中功能区上的"主页"选项卡.

  • 单击"刷新".

  • 单击下拉列表中的"刷新"以刷新所选表.

  • 单击下拉列表中的"全部刷新"刷新所有表格.

Manually Refreshing

要刷新数据模型中使用相同连接的所有表的数据,请执行以下操作 :

  • 单击主页Power Pivot窗口中功能区上的选项卡.

  • 单击"获取外部数据"组中的"现有连接".

出现"现有连接"对话框.

  • 选择一个连接.

  • 点击"刷新"按钮.

现有连接

出现数据刷新对话框,数据刷新进度信息为显示为PowerPivot引擎从选定的表或数据源的所有表重新加载数据.

有三种可能的结果 :

  • 成功 : 报告导入每个表的行数.

  • 错误 : 如果数据库脱机,您不再拥有权限,则可能会发生错误.在源中删除或重命名表格或列.

  • 已取消 : 这意味着Excel没有发出刷新请求,可能是因为连接上禁用了刷新.

可能的结果

单击关闭按钮.

更改数据源

要更改数据模型中的数据,您可以在Power Pivot窗口中编辑连接信息或更新数据模型中使用的表和列的定义.

您可以对现有数据源进行以下更改 :

Connections

  • 编辑数据库名称或者服务器名称.

  • 更改源文本文件,电子表格或数据源的名称.

  • 更改数据源的位置.

  • 对于关系数据源,请更改默认目录或初始目录.

  • 更改身份验证方法或用于访问数据的凭据.

  • 编辑数据源的高级属性.

  • 在数据上添加或删除过滤器.

  • 更改过滤条件.

  • 添加或删除表格.

  • 更改表名.

  • 编辑数据源中的表与数据模型中的表之间的映射.

  • 从数据源中选择不同的列.

  • 更改列名称.

  • 添加新列.

  • 从数据模型中删除列(不影响数据源).

您可以通过以下方式编辑现有数据源的属性 :

  • 您可以更改连接信息,包括用作源的文件,订阅源或数据库,其属性或其他提供商特定的连接选项.

  • 您可以更改表格和列n映射并删除对不再使用的列的引用.

  • 您可以更改从外部数据源获得的表,视图或列.

修改与现有数据源的连接

您可以修改您拥有的连接通过更改当前连接使用的外部数据源来创建外部数据源.但是,要遵循的过程取决于数据源类型.

  • 单击PowerPivot窗口中功能区上的"主页"选项卡./li>

  • 单击"获取外部数据"组中的"现有连接".

Modifying Connection

出现"现有连接"对话框.选择要修改的连接.

根据要更改的数据源的类型,提供程序可能不同.此外,可用的属性可能需要更改.考虑一个连接到包含数据的Excel工作簿的简单示例.

Excel工作簿包含数据

  • 单击"编辑"按钮.出现"编辑连接"对话框.

  • 单击"浏览"按钮以查找同一类型的另一个数据库(本例中为Excel工作簿),但名称不同或位置.

  • 点击打开按钮.

新的文件将被选中.将显示一条消息,指出您已修改连接信息,并且需要保存并刷新表以验证连接.

消息

  • 单击"保存"按钮.您将返回"现有连接"对话框.

  • 单击"刷新"按钮.出现"数据刷新"对话框,显示数据刷新进度.将显示数据刷新的状态.有关详细信息,请参阅手动刷新现有数据源部分.

  • 数据刷新成功后,单击"关闭".

  • 在"现有连接"对话框中单击"关闭".

编辑表和列映射(绑定)

要在数据源更改时编辑列映射,请执行以下和减号;

  • 在Power Pivot窗口中单击包含要修改的表的选项卡.

  • 单击"设计"选项卡在功能区上.

  • 单击表格属性.

编辑表

出现编辑表属性对话框.

编辑表属性

您可以观察以下 :

  • sele的名字数据模型中的cted表显示在表名称框中.

  • 外部数据源中相应表的名称显示在"源名称"框中.

  • 列名有两种选择 - 来源和模态.

  • 如果列在数据源和数据模型中的命名方式不同,则可以通过选择这些选项在两组列名之间切换.

  • 预览所选表格的显示在对话框中.

您可以编辑以下 :

  • 要更改用作数据源的表,请在"源名称"下拉列表中选择与所选表不同的表.

  • 如果需要更改列映射 :

    • 添加列如果存在于源中但不存在于数据模型中,请选中列名称旁边的复选框.对要添加的所有列重复此操作.下次刷新时,实际数据将被加载到数据模型中.

    • 如果数据模型中的某些列在当前数据中不再可用源,通知区域中会显示一条消息,列出无效列.您无需执行任何操作.

  • 单击"保存"按钮.

当您保存当前的表属性集时,您将收到一条消息 - 请稍候.然后将显示检索到的行数.

在数据模型的表中,将自动删除任何无效列并添加新列.

更改列名和数据类型

您可以在数据模型中更改表中列的名称,如下所示 :

  • 双击列标题.标题中列的名称将突出显示.

  • 键入新列名称,覆盖旧名称.或者,您可以按如下方式更改数据模型中表格中列的名称:

  • 通过单击其标题选择列.

  • 右键单击该列.

  • 单击下拉列表中的重命名列.

更改列名

标题中列的名称将突出显示.键入新列名,覆盖旧名称.

如您所知,数据模型中表中列中的所有值必须具有相同的数据类型.

要更改列的数据类型,请执行以下操作 :

  • 选择要通过单击其标题来更改的列.

  • 单击功能区上的"主页"选项卡.

  • 单击"格式"组中的控件以修改列的数据类型和格式.

检查Controld

将过滤器添加/更改为数据源

您可以添加过滤器导入数据以限制数据模型中表的行数时到数据源.稍后,您可以通过更改先前定义的过滤器来添加更多行或减少数据模型中表中的行数.

在导入期间向数据源添加过滤器

要在数据导入期间向数据源添加新过滤器,请执行以下操作和减号;

  • 单击Power Pivot窗口中功能区上的"主页"选项卡.

  • 单击"获取外部数据"组中的一个数据源.

出现表导入向导对话框.

  • 继续执行步骤 - 选择表格和视图.

  • 选择一个表格,然后点击预览&过滤.

向数据源添加过滤器

预览选定表格对话框出现.

  • 单击要应用过滤器的列.

  • 单击列标题右侧的向下箭头.

预览选定的表格

要添加过滤器,请执行以下操作之一 :

  • 在列值列表中,选择或清除一个或多个要过滤的值,然后单击"确定".

    但是,如果值的数量非常大,则单个项目可能不会显示在列表中.相反,您将看到消息 - "要显示的项目太多."

  • 单击数字过滤器或文本过滤器(取决于列的数据类型) .

    • 然后,单击其中一个比较运算符命令(例如"等于"),或单击"自定义过滤器".在"自定义过滤器"对话框中,创建过滤器,然后单击"确定".

注意 : 如果您在任何阶段出错,请单击"清除行过滤器"按钮并重新开始.

  • 单击"确定".您将返回到表导入向导的"选择表和视图"页面.

查看页面

如您所见,在"过滤器详细信息"列中,将显示已定义过滤器的列的"应用过滤器"链接.

您可以单击该链接以查看向导构建的过滤器表达式.但是,每个过滤器表达式的语法取决于提供者,您无法编辑它.

链接到视图

  • 单击"完成"以导入应用了过滤器的数据.

  • 关闭"表导入向导".

将过滤器更改为现有数据源

导入数据后,可能必须从通过添加更多行或限制表中的现有行来不时.在这种情况下,您可以更改表格上的现有过滤器或添加新过滤器.

  • 单击"主页"选项卡Power Pivot窗口中的功能区.

  • 单击"获取外部数据"组中的"现有连接".将出现"现有连接"对话框.

  • 单击包含必须更改过滤器的表的连接.

  • 点击打开按钮.

更改过滤器

您将进入"表导入向导"对话框.重复上一节中的步骤以过滤列.