Прочитать на английском

Поделиться через


Excel.Workbook

Синтаксис

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

О нас

Возвращает содержимое файла рабочей книги Excel.

  • useHeaders может иметь значение NULL, логическое значение (true/false), указывающее, должна ли первая строка каждой возвращаемой таблицы рассматриваться как заголовок или запись параметров. Значение по умолчанию: false.
  • delayTypes может иметь значение NULL или логическое значение (true/false), указывающее, должны ли столбцы каждой возвращаемой таблицы оставаться нетипизированными. Значение по умолчанию: false.

Если запись указана для useHeadersdelayTypes имеет значение NULL), можно указать следующие поля записи:

  • UseHeaders: может иметь значение NULL или логическое значение (true/false), указывающее, должна ли первая строка каждой возвращаемой таблицы рассматриваться как заголовок. Значение по умолчанию: false.
  • DelayTypes: может иметь значение NULL или логическое значение (true/false), указывающее, должны ли столбцы каждой возвращаемой таблицы оставаться нетипизированными. Значение по умолчанию: false.
  • InferSheetDimensions. Может иметь значение NULL или логическое (true/false), указывающее, следует ли выводить область листа, содержащего данные, считывая сам лист, а не считывая метаданные измерений из файла. Это может быть полезно в случаях, когда метаданные измерений неверны. Обратите внимание, что этот параметр поддерживается только для файлов Open XML Excel, а не для устаревших файлов Excel. Значение по умолчанию: false.

Примечание

Параметр useHeaders или поле записи UseHeaders преобразует числа и даты в текст с использованием текущих региональных параметров и поэтому может вести себя по-разному при выполнении в средах с различными настройками операционной системы. Вместо этого рекомендуется использовать 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

Возвращает содержимое листа 1 из книги Excel.

Использование

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"]
})