Bootstrap

1.1 PowerQuery从工作薄文件中获取数据

PowerQuery 从工作薄文件中获取数据时会自动生成四个步骤,点击【转换数据】后自动生成。

尽管全是自动生成,只需要鼠标操作即可,但若了解这其中发生了什么,才更有利于以后更加方便的去处理其他复杂场景下的需求。

  • 搞清楚这四步都做了什么
    在这里插入图片描述

  • 可点击【高级编辑器】查看这四步查询的详细内容。此处的Let .. in结构,知道了解即可!
    在这里插入图片描述


  • 步骤解析:

1. 源 Source: Excel.Workbook([binary], null,true)

  • 第一参数Binary:File.Content(文件路径)
  • 第二参数表示是否使用标题,类型为布尔值。true表示使用第一行作为标题,不填、nullfalse都表示不使用。若将第二参数调整为true,应删除第三步骤【提升的标题】
  • 第三参数表示为延迟类型,同样为布尔值,据说在合并文件夹时填true,运行效率更高。实际使用中没有明显区别,在应对大量文件需要合并时加上即可,加上也不费时间,不加也不影响什么。
    源Source

2. 导航 Sheet3_Sheet: 选择的某个工作表,并返回获取工作表的数据;标题在第一行,所以第三步骤将第一行提升为标题

  • 此处使用:源{[Item="Sheet3",Kind="Sheet"]}来筛选行(即筛选工作表),然后接[Data]获取工作表数据。
    在这里插入图片描述
  • 1. 扩展阅读: 三大容器:list、record、table。此处通过{[Item=“Sheet3”]}来确定取哪个工作表的数据。了解即可,一般此步骤都是自动生成,需要手工写出来的场景较少。
  • 2. 扩展阅读: 将第一步骤Excel.Workbook([binary], null,true)的第二参数修改为true,效果如下:自动将第一行作为标题

3. 提升的标题: 将数据的第一行往上提升为标题(字段)。前面的第二参数改为true后可删除此步骤,不然标题就消失了
在这里插入图片描述


4. 更改的类型: PQ 自动识别数据类型,并将其修改,PQ 的数据类型自动识别通常只参考了前 200 行

  • 这一步只能作为辅助,多数标题类操作都会导致自动生成此步骤。
  • 此处公式:Table.TransformColumnTypes,类似的有:Table.TransformColumnsTable.TransformRows较为常用。
    在这里插入图片描述
;