Excel.Workbook

Syntax

Excel.Workbook(
    workbook as binary,
    optional useHeaders as any,
    optional delayTypes as nullable logical
) as table

About

返回 Excel 工作簿的内容。

  • useHeaders 可以为 null、逻辑(true/false)值,该值指示每个返回表的第一行是应被视为标头还是选项记录。 默认值:false。
  • delayTypes 可以为 null 或逻辑值(true/false),该值指示是否应将每个返回表的列保留为非类型化。 默认值:false。

如果为 useHeaders 指定了记录(且 delayTypes 为 null),可以提供以下记录字段:

  • UseHeaders:可以是 null 或逻辑值(true/false),该值指示是否应将每个返回表的第一行视为标头。 默认值:false。
  • DelayTypes:可以为 null 或逻辑值(true/false),该值指示是否应将每个返回表的列保留为非类型化。 默认值:false。
  • InferSheetDimensions:可以是 null 或逻辑 (true/false) 值,该值指示是否应通过读取工作表本身来推断包含数据的工作表区域,而不是从文件中读取维度元数据来推断。 在维度元数据不正确的情况下,这非常有用。 请注意,此选项仅支持 Open XML Excel 文件,而不支持旧版 Excel 文件。 默认值:false。

注释

参数 useHeadersUseHeaders 记录字段使用当前区域性将数字和日期转换为文本,因此在设置不同作系统区域性的环境中运行时行为不同。 我们推荐改用 Table.PromoteHeaders。 例如,而不是使用 Excel.Workbook(File.Contents("C:\myfile.xlsx", true, true))Excel.Workbook(File.Contents("C:\myfile.xlsx", [UseHeaders = true], null))改用 Table.PromoteHeaders(Excel.Workbook(File.Contents("C:\myfile.xlsx", null, true), [PromoteAllScalars = true]))

示例 1

从 Excel 工作簿返回 Sheet1 的内容。

用法

Excel.Workbook(File.Contents("C:\Book1.xlsx"), null, true){[Item="Sheet1"]}[Data]

输出

Table.FromRecords({
    [Column1 = "ID", Column2 = "Name", Column3 = "Phone"],
    [Column1 = 1, Column2 = "Bob", Column3 = "123-4567"],
    [Column1 = 3, Column2 = "Pam", Column3 = "543-7890"],
    [Column1 = 2, Column2 = "Jim", Column3 = "987-6543"]
})