数据源:

任意超级表

目标:

将超级表中的数据加载到Power Query编辑器中

操作过程:

选取超级表中任意单元格(选取普通表时会自动增加插入超级表的步骤)》数据》来自表格/区域

  

M公式:

   = Excel.CurrentWorkbook(){[Name="超级表名"]}[Content]

扩展:

  以二进制形式返回文件内容:File.Contents("路径\文件名.后缀名")

  从工作簿:= Excel.Workbook(二进制Excel工作簿, 标题参数, 刷新参数)

    二进制Excel工作簿可以嵌套File.Contents("路径\文件名.xlsx")

    标题参数

      null / fasle / 缺省:在原表基础上加上默认标题

      true:第一行为标题

    刷新参数

      true:加载时刷新

      false / 缺省:加载时不刷新

  从CSV文件:= Csv.Document(二进制CSV文件,[Delimiter="指定分隔符", Encoding=文件原始格式代号])

  从文件夹:

    = Folder.Files("路径")

    = Folder.Contents("路径")

  从网页

    = Web.Contents("网址")

    = Web.Page(二进制html文件)

      二进制html文件可嵌套Web.Contents("网址")

  从其他文件/数据库:

    = Access.Database(二进制Acceess数据库)

    = Json.Document(二进制Json文件)

    = Pdf.Tables(二进制PDF文件)

    = Xml.Tables(二进制Xml文件)

    ……

建构

  表

  = #table({"列名1",...,"列名n"}, {{第一行数据},...,{第n行数据}})

  示例:

    = #table({"第一列","第二列","第三列"},{{"第1行",1,2},{"第2行",3,4}})

列表

= {数据1,...,数据n}

= {数据1..数据n}(数据1-数据n为连续数据)

示例:

  ={1,5,7}

  ={4..9}(即{4,5,6,7,8,9})

  = {"a".."d"}(即{"a","b","c","d"})

记录

= [记录1=数据1,...,记录n=数据n]

示例:

  = [第1行=1, 第2行="A"]

深化

  表

= 表 {[标题名1="指定内容1",...,标题名n="指定内容n"]} [深化列标题]

= 表 {深化单元格所在行的行数} [深化列标题]

  使用第一个公式只要保证可展示唯一行即可,不需要列出所有标题

  单深化列形成列表

  单深化行形成记录

  示例:

    

    深化第二列:= 表 [列 2]

    深化第一行:= 表 {0}

    深化第一行第二列的单元格(1):

      = 表 [列 2] {0}

      = 表 {0} [列 2]

    深化第一列中为D的行对应第二列的单元格(4):

      = 表 {[列 1="D"]} [列 2]

列表

= 列表 {深化单元格所在行的行数}

  示例:

    = {"A".."Z"} {0}

    结果为A

记录

  = 记录 [深化单元格所在行的标题]

  示例:

    = [a=1,b=2] [b]

    结果为2

Excel.CurrentWorkbook数据源(Power Query 之 M 语言)的更多相关文章

  1. 自定义函数(Power Query 之 M 语言)

    数据源: 任意工作簿 目标: 使用自定义函数实现将数据源导入Power Query编辑器 操作过程: PowerQuery编辑器>主页>新建源>其他源>空查询 编辑栏内写入公式 ...

  2. M语言的写、改、删(Power Query 之 M 语言)

    M语言基本上和其他语言一样,用敲键盘的方式写入.修改.删除,这个是废话. M语言可以在[编辑栏]或[高级编辑器]里直接写入.修改.删除,这个也是废话. M语言还有个地方可以写入.修改.删除,就是[自定 ...

  3. M语言的藏身之地(Power Query 之 M 语言)

    M函数和M公式是Power Query专用的函数与公式,M代码是Power Query专用的用于实现查询功能的代码.M函数公式和M代码统称M语言. 查看M公式:[编辑栏] 查看方法:在Power Qu ...

  4. Excel中使用Power Query获取网页json数据

    Power Query下载地址 https://www.microsoft.com/zh-CN/download/details.aspx?id=39379 使用步骤 1.数据->其它源-> ...

  5. 在【自定义列】中使用M函数(Power Query 之 M 语言)

    数据源: "品名"一列 目标: 提取品名中的首字符,生成新列:"品名简称" 解决方案: 在[自定义列]中使用M函数Text.Start 步骤: 打开[自定义列] ...

  6. M函数目录(Power Query 之 M 语言)

    2021-12-11更新 主页(选项卡) 管理列(组) 选择列 选择列Table.SelectColumns 删除列 删除列Table.RemoveColumns 删除其他列Table.SelectC ...

  7. Table.ReorderColumns移动…Reorder…(Power Query 之 M 语言)

    数据源: 至少两列 目标: 列顺序重新排列 操作过程: 选取待移动的列>鼠标拖放列标题 选取待移动的列>[转换]>[移动]>选取 M公式:  = Table.ReorderCo ...

  8. Table.FillDown填充Table.Fill…(Power Query 之 M 语言)

    数据源: 任意列中包含空单元格 目标: 将空单元格填充为其上或其下单元格中的内容 操作过程: 选取指定列>[转换]>[填充]>[向下] 选取指定列>[转换]>[填充]&g ...

  9. List.Sum…统计信息(Power Query 之 M 语言)

    数据源: 任意数据源,一列数值,一列非数值(文本) 目标: 对数值列进行求和等计算,对非数值列进行计数等计算 操作过程: 选取待计算的列>[转换]>[统计信息]>选取   M公式: ...

随机推荐

  1. [atARC085F]NRE

    令$(S_{a},S_{b})$表示$a_{i}\in S_{a}$且$b_{i}\in S_{b}$的i个数,那么答案相当于$S(0,1)+S(1,0)=S(0,1)+S(\{0,1\},0)-S( ...

  2. 【Java面试题】-- Java基本类型

    Java基本类型 2019-11-03  19:03:48  by冲冲 1.两个float型相减丢失精度,如何解决? 使用BigDemical装饰器模式 public class Test { pub ...

  3. 第十四章 kubernetes 核心技术-调度器

    一.概述 一个容器平台的主要功能就是为容器分配运行时所需要的计算,存储和网络资源.容器调 度系统负责选择在最合适的主机上启动容器,并且将它们关联起来.它必须能够自动的处 理容器故障并且能够在更多的主机 ...

  4. maven项目打包不带版本号的操作

  5. 如何删除一个win10的服务

    使用场景: 之前电脑玩腾讯qq微端游戏,后来卸载残留服务一直在后台占用系统资源.那么如何关闭这个服务呢. 1.首先 管理员运行--cmd.exe 2.打开任务管理器,找到服务名称,如果服务开启可以关闭 ...

  6. BJ2 斜率限制器

    BJ2 斜率限制器 本文介绍斜率限制器取自于 Anastasiou 与 Chan (1997)[1]研究,其所利用的斜率限制器也是 Barth 与 Jespersen 限制器的一种修正形式,并且包含一 ...

  7. 使用BRAKER2进行基因组注释

    来自:https://www.jianshu.com/p/e6a5e1f85dda 使用BRAKER2进行基因组注释 BRAKER2是一个基因组注释流程,能够组合GeneMark,AUGUSTUS和转 ...

  8. Linux命令行批量删除文件(目录)

    快速-批量删除文件或目录 1-1.快速删除大文件夹(注意目录后的结束符'/')(对于含有海量文件的目录,不能直接rm -rf删除,这样效率很慢:) rsync -a --delete blank/ t ...

  9. UE4之Slate:App默认窗口的创建流程

    UE4版本:4.24.3源码编译 Windows10 + VS2019开发环境 在先前分享的基础上,现在来梳理下App启动时默认窗口的创建流程,以及相关的类.对象之间的抽象层级: 纯C++工程配置 S ...

  10. 多线程高级篇1 — JUC — 只弄到处理高并发集合问题

    1.线程池 1.1).什么是线程池? 池( pool ),就是一个容器,所以线程池就是把多个线程对象放到一个容器中 1.2).如何创建线程池? 先来了解几个常识 Executor -- 这是一个接口( ...