Excel.Worksheet class
Лист Excel представляет собой сетку ячеек. Он может содержать данные, таблицы, диаграммы и т. д. Дополнительные сведения об объектной модели листа см. в статье Работа с листами с помощью API JavaScript для Excel.
- Extends
Комментарии
Примеры
// Get a Worksheet object by its name and activate it.
await Excel.run(async (context) => {
const wSheetName = 'Sheet1';
const worksheet = context.workbook.worksheets.getItem(wSheetName);
worksheet.activate();
await context.sync();
});
Свойства
auto |
Представляет |
charts | Возвращает коллекцию диаграмм, которые являются частью листа. |
comments | Возвращает коллекцию всех объектов Comments на листе. |
context | Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office. |
custom |
Возвращает коллекцию настраиваемых свойств на уровне листа. |
enable |
Определяет, следует ли excel пересчитывать лист при необходимости. Значение true, если Excel пересчитывает лист при необходимости. Значение false, если Excel не пересчитывает лист. |
freeze |
Возвращает объект, который можно использовать для управления замороженными панелями на листе. |
horizontal |
Получает коллекцию горизонтальных разрывов страницы для листа. Эта коллекция содержит только добавленные вручную разрывы страниц. |
id | Возвращает значение, однозначно идентифицирующее лист в данной книге. Значение идентификатора остается прежним, даже если переименовать или переместить лист. |
name | Отображаемое имя листа. Имя должно содержать менее 32 символов. |
names | Коллекция имен, относящих к текущему листу. |
page |
|
pivot |
Коллекция сводных таблиц на листе. |
position | Положение листа (начиная с нуля) в книге. |
protection | Возвращает объект защиты листа для листа. |
shapes | Возвращает коллекцию всех объектов Shape на листе. |
show |
Указывает, являются ли линии сетки видимыми для пользователя. |
show |
Указывает, являются ли заголовки видимыми для пользователя. |
slicers | Возвращает коллекцию срезов, которые являются частью листа. |
standard |
Возвращает стандартную (по умолчанию) высоту всех строк на листе (в пунктах). |
standard |
Задает стандартную (по умолчанию) ширину всех столбцов на листе. Одна единица ширины столбца равна ширине одного символа в обычном стиле. Для пропорциональных шрифтов используется ширина символа 0 (ноль). |
tab |
Цвет вкладки листа. При получении цвета вкладки, если лист невидим, значение будет иметь значение |
tab |
Возвращает значение, представляющее этот лист, который может быть прочитан с помощью Open Office XML. Это целочисленное значение, которое отличается от |
tables | Коллекция таблиц, имеющихся на листе. |
vertical |
Получает коллекцию вертикальных разрывов страницы для листа. Эта коллекция содержит только добавленные вручную разрывы страниц. |
visibility | Видимость листа. |
Методы
activate() | Активация листа в пользовательском интерфейсе Excel. |
calculate(mark |
Вычисляет все ячейки на листе. |
copy(position |
Копирует лист и помещает его в указанное положение. |
copy(position |
Копирует лист и помещает его в указанное положение. |
delete() | Удаляет лист из книги. Обратите внимание, что если для видимости листа задано значение VeryHidden, операция удаления завершится ошибкой |
find |
Находит все вхождения заданной строки на основе заданных критериев и возвращает их в виде |
find |
Находит все вхождения заданной строки на основе заданных критериев и возвращает их в виде |
get |
Возвращает объект, |
get |
Возвращает лист, следующий за этим. Если после этого листа нет, этот метод вызовет ошибку. |
get |
Возвращает лист, следующий за этим. Если после этого листа нет, этот метод возвращает объект со свойством |
get |
Возвращает лист, предшествующий этому листу. Если предыдущих листов нет, этот метод вызовет ошибку. |
get |
Возвращает лист, предшествующий этому листу. Если предыдущих листов нет, этот метод возвращает объект со свойством |
get |
|
get |
Возвращает объект, |
get |
|
get |
Используемый диапазон — это наименьший диапазон, включающий в себя все ячейки с определенным значением или форматированием. Если весь лист пуст, эта функция вернет верхнюю левую ячейку (т. е. не вызовет ошибку). |
get |
Используемый диапазон — это наименьший диапазон, включающий в себя все ячейки с определенным значением или форматированием. Если весь лист пуст, то этот метод возвращает объект со свойством |
load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
replace |
Находит и заменяет определенную строку на основе условий, указанных в текущем листе. |
set(properties, options) | Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа. |
set(properties) | Задает несколько свойств объекта одновременно на основе существующего загруженного объекта. |
show |
Показывает группы строк или столбцов по уровням структуры. Структурирует группы и суммирует список данных на листе. Параметры |
toJSON() | Переопределяет метод JavaScript |
События
on |
Происходит при активации листа. |
on |
Происходит при вычислении листа. |
on |
Происходит при изменении данных на определенном листе. |
on |
Возникает при сортировке одного или нескольких столбцов. Это происходит в результате операции сортировки слева направо. |
on |
Происходит при отключении листа. |
on |
Возникает, если изменен формат указанного листа. |
on |
Происходит при изменении одной или нескольких формул на этом листе. Это событие происходит при изменении самой формулы, а не значения данных, полученных в результате вычисления формулы. |
on |
Происходит при изменении состояния защиты листа. |
on |
Происходит при изменении скрытого состояния одной или нескольких строк на определенном листе. |
on |
Возникает при сортировке одной или нескольких строк. Происходит в результате операции сортировки сверху вниз. |
on |
Происходит при изменении выделения на определенном листе. |
on |
Происходит при щелчке левой кнопкой мыши или нажатии на листе. Это событие не будет запущено при щелчке в следующих случаях:
|
Сведения о свойстве
autoFilter
Представляет AutoFilter
объект листа.
readonly autoFilter: Excel.AutoFilter;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-auto-filter.yaml
// This function adds a percentage AutoFilter to the active worksheet
// and applies the filter to a column of the used range.
await Excel.run(async (context) => {
// Retrieve the active worksheet and the used range on that worksheet.
const sheet = context.workbook.worksheets.getActiveWorksheet();
const farmData = sheet.getUsedRange();
// Add a filter that will only show the rows with the top 50% of values in column 3.
sheet.autoFilter.apply(farmData, 3, {
criterion1: "50",
filterOn: Excel.FilterOn.topPercent
});
await context.sync();
});
charts
Возвращает коллекцию диаграмм, которые являются частью листа.
readonly charts: Excel.ChartCollection;
Значение свойства
Комментарии
comments
Возвращает коллекцию всех объектов Comments на листе.
readonly comments: Excel.CommentCollection;
Значение свойства
Комментарии
context
Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office.
context: RequestContext;
Значение свойства
customProperties
Возвращает коллекцию настраиваемых свойств на уровне листа.
readonly customProperties: Excel.WorksheetCustomPropertyCollection;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/26-document/custom-properties.yaml
await Excel.run(async (context) => {
// Load the keys and values of all custom properties in the current worksheet.
const customWorksheetProperties = context.workbook.worksheets.getActiveWorksheet().customProperties;
customWorksheetProperties.load(["key", "value"]);
await context.sync();
// Log each custom property to the console.
// Note that your document may have more properties than those you have set using this snippet.
customWorksheetProperties.items.forEach((property) => {
console.log(`${property.key}:${property.value}`);
});
});
enableCalculation
Определяет, следует ли excel пересчитывать лист при необходимости. Значение true, если Excel пересчитывает лист при необходимости. Значение false, если Excel не пересчитывает лист.
enableCalculation: boolean;
Значение свойства
boolean
Комментарии
freezePanes
Возвращает объект, который можно использовать для управления замороженными панелями на листе.
readonly freezePanes: Excel.WorksheetFreezePanes;
Значение свойства
Комментарии
horizontalPageBreaks
Получает коллекцию горизонтальных разрывов страницы для листа. Эта коллекция содержит только добавленные вручную разрывы страниц.
readonly horizontalPageBreaks: Excel.PageBreakCollection;
Значение свойства
Комментарии
id
Возвращает значение, однозначно идентифицирующее лист в данной книге. Значение идентификатора остается прежним, даже если переименовать или переместить лист.
readonly id: string;
Значение свойства
string
Комментарии
name
Отображаемое имя листа. Имя должно содержать менее 32 символов.
name: string;
Значение свойства
string
Комментарии
names
Коллекция имен, относящих к текущему листу.
readonly names: Excel.NamedItemCollection;
Значение свойства
Комментарии
pageLayout
PageLayout
Возвращает объект листа.
readonly pageLayout: Excel.PageLayout;
Значение свойства
Комментарии
pivotTables
Коллекция сводных таблиц на листе.
readonly pivotTables: Excel.PivotTableCollection;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-get-pivottables.yaml
await Excel.run(async (context) => {
// Get the names of all the PivotTables in the current worksheet.
const pivotTables = context.workbook.worksheets.getActiveWorksheet().pivotTables;
pivotTables.load("name");
await context.sync();
// Display the names in the console.
console.log("PivotTables in the current worksheet:")
pivotTables.items.forEach((pivotTable) => {
console.log(`\t${pivotTable.name}`);
});
});
position
Положение листа (начиная с нуля) в книге.
position: number;
Значение свойства
number
Комментарии
Примеры
// Set worksheet position.
await Excel.run(async (context) => {
const wSheetName = 'Sheet1';
const worksheet = context.workbook.worksheets.getItem(wSheetName);
worksheet.position = 2;
await context.sync();
});
protection
Возвращает объект защиты листа для листа.
readonly protection: Excel.WorksheetProtection;
Значение свойства
Комментарии
Примеры
// Unprotecting a worksheet with unprotect() will remove all
// WorksheetProtectionOptions options applied to a worksheet.
// To remove only a subset of WorksheetProtectionOptions use the
// protect() method and set the options you wish to remove to true.
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sheet1");
sheet.protection.protect({
allowInsertRows: false, // Protect row insertion
allowDeleteRows: true // Unprotect row deletion
});
});
shapes
Возвращает коллекцию всех объектов Shape на листе.
readonly shapes: Excel.ShapeCollection;
Значение свойства
Комментарии
showGridlines
Указывает, являются ли линии сетки видимыми для пользователя.
showGridlines: boolean;
Значение свойства
boolean
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/gridlines.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
sheet.showGridlines = true;
await context.sync();
});
showHeadings
Указывает, являются ли заголовки видимыми для пользователя.
showHeadings: boolean;
Значение свойства
boolean
Комментарии
slicers
Возвращает коллекцию срезов, которые являются частью листа.
readonly slicers: Excel.SlicerCollection;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/38-pivottable/pivottable-slicer.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Pivot");
const slicer = sheet.slicers.add(
"Farm Sales", /* The slicer data source. For PivotTables, this can be the PivotTable object reference or name. */
"Type" /* The field in the data source to filter by. For PivotTables, this can be a PivotField object reference or ID. */
);
slicer.name = "Fruit Slicer";
await context.sync();
});
standardHeight
Возвращает стандартную (по умолчанию) высоту всех строк на листе (в пунктах).
readonly standardHeight: number;
Значение свойства
number
Комментарии
standardWidth
Задает стандартную (по умолчанию) ширину всех столбцов на листе. Одна единица ширины столбца равна ширине одного символа в обычном стиле. Для пропорциональных шрифтов используется ширина символа 0 (ноль).
standardWidth: number;
Значение свойства
number
Комментарии
tabColor
Цвет вкладки листа. При получении цвета вкладки, если лист невидим, значение будет иметь значение null
. Если лист виден, но для цвета вкладки задано значение auto, возвращается пустая строка. В противном случае свойству будет присвоен цвет в форме #RRGGBB (например, FFA500). При настройке цвета используйте пустую строку, чтобы задать "автоматический" цвет или реальный цвет в противном случае.
tabColor: string;
Значение свойства
string
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/tab-color.yaml
await Excel.run(async (context) => {
const activeSheet = context.workbook.worksheets.getActiveWorksheet();
activeSheet.tabColor = "#FF0000";
await context.sync();
});
tabId
Возвращает значение, представляющее этот лист, который может быть прочитан с помощью Open Office XML. Это целочисленное значение, которое отличается от worksheet.id
(возвращает глобальный уникальный идентификатор) и worksheet.name
(которое возвращает такое значение, как "Лист1").
readonly tabId: number;
Значение свойства
number
Комментарии
tables
Коллекция таблиц, имеющихся на листе.
readonly tables: Excel.TableCollection;
Значение свойства
Комментарии
verticalPageBreaks
Получает коллекцию вертикальных разрывов страницы для листа. Эта коллекция содержит только добавленные вручную разрывы страниц.
readonly verticalPageBreaks: Excel.PageBreakCollection;
Значение свойства
Комментарии
visibility
Видимость листа.
visibility: Excel.SheetVisibility | "Visible" | "Hidden" | "VeryHidden";
Значение свойства
Excel.SheetVisibility | "Visible" | "Hidden" | "VeryHidden"
Комментарии
[ Набор API: ExcelApi 1.1 для видимости чтения; 1.2 для его настройки. ]
Сведения о методе
activate()
Активация листа в пользовательском интерфейсе Excel.
activate(): void;
Возвращаемое значение
void
Комментарии
Примеры
await Excel.run(async (context) => {
const wSheetName = 'Sheet1';
const worksheet = context.workbook.worksheets.getItem(wSheetName);
worksheet.activate();
await context.sync();
});
calculate(markAllDirty)
Вычисляет все ячейки на листе.
calculate(markAllDirty: boolean): void;
Параметры
- markAllDirty
-
boolean
True, чтобы пометить все как грязное.
Возвращаемое значение
void
Комментарии
copy(positionType, relativeTo)
Копирует лист и помещает его в указанное положение.
copy(positionType?: Excel.WorksheetPositionType, relativeTo?: Excel.Worksheet): Excel.Worksheet;
Параметры
- positionType
- Excel.WorksheetPositionType
Расположение в книге для размещения только что созданного листа. Значение по умолчанию — None, которое вставляет лист в начало листа.
- relativeTo
- Excel.Worksheet
Существующий лист, определяющий положение только что созданного листа. Это необходимо только в том случае, если positionType
имеет значение "До" или "После".
Возвращаемое значение
Только что созданный лист.
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-copy.yaml
await Excel.run(async (context) => {
let myWorkbook = context.workbook;
let sampleSheet = myWorkbook.worksheets.getActiveWorksheet();
let copiedSheet = sampleSheet.copy("End")
sampleSheet.load("name");
copiedSheet.load("name");
await context.sync();
console.log("'" + sampleSheet.name + "' was copied to '" + copiedSheet.name + "'")
});
copy(positionTypeString, relativeTo)
Копирует лист и помещает его в указанное положение.
copy(positionTypeString?: "None" | "Before" | "After" | "Beginning" | "End", relativeTo?: Excel.Worksheet): Excel.Worksheet;
Параметры
- positionTypeString
-
"None" | "Before" | "After" | "Beginning" | "End"
Расположение в книге для размещения только что созданного листа. Значение по умолчанию — None, которое вставляет лист в начало листа.
- relativeTo
- Excel.Worksheet
Существующий лист, определяющий положение только что созданного листа. Это необходимо только в том случае, если positionType
имеет значение "До" или "После".
Возвращаемое значение
Только что созданный лист.
Комментарии
delete()
Удаляет лист из книги. Обратите внимание, что если для видимости листа задано значение VeryHidden, операция удаления завершится ошибкой InvalidOperation
с исключением. Сначала необходимо изменить видимость на скрытую или видимую перед удалением.
delete(): void;
Возвращаемое значение
void
Комментарии
Примеры
await Excel.run(async (context) => {
const wSheetName = 'Sheet1';
const worksheet = context.workbook.worksheets.getItem(wSheetName);
worksheet.delete();
await context.sync();
});
findAll(text, criteria)
Находит все вхождения заданной строки на основе заданных критериев и возвращает их в виде RangeAreas
объекта, состоящего из одного или нескольких прямоугольных диапазонов.
findAll(text: string, criteria: Excel.WorksheetSearchCriteria): Excel.RangeAreas;
Параметры
- text
-
string
Строка для поиска.
- criteria
- Excel.WorksheetSearchCriteria
Дополнительные критерии поиска, включая то, должен ли поиск соответствовать всей ячейке или учитывать регистр.
Возвращаемое значение
Объект RangeAreas
, состоящий из одного или нескольких прямоугольных диапазонов, который соответствует условиям поиска. Если никакие ячейки не соответствуют этому условию, будет выдана ItemNotFound
ошибка.
Комментарии
findAllOrNullObject(text, criteria)
Находит все вхождения заданной строки на основе заданных критериев и возвращает их в виде RangeAreas
объекта, состоящего из одного или нескольких прямоугольных диапазонов.
findAllOrNullObject(text: string, criteria: Excel.WorksheetSearchCriteria): Excel.RangeAreas;
Параметры
- text
-
string
Строка для поиска.
- criteria
- Excel.WorksheetSearchCriteria
Дополнительные критерии поиска, включая то, должен ли поиск соответствовать всей ячейке или учитывать регистр.
Возвращаемое значение
Объект RangeAreas
, состоящий из одного или нескольких прямоугольных диапазонов, который соответствует условиям поиска. Если совпадений нет, этот метод возвращает объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/worksheet-find-all.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sample");
const foundRanges = sheet.findAllOrNullObject("Complete", {
completeMatch: true,
matchCase: false
});
await context.sync();
if (foundRanges.isNullObject) {
console.log("No complete projects");
} else {
foundRanges.format.fill.color = "green"
}
});
getCell(row, column)
Возвращает объект, Range
содержащий одну ячейку на основе номеров строк и столбцов. Ячейка может находиться за пределами родительского диапазона, если она находится в сетке листа.
getCell(row: number, column: number): Excel.Range;
Параметры
- row
-
number
Номер строки ячейки, которую требуется извлечь. Используется нулевой индекс.
- column
-
number
Номер столбца ячейки, которую требуется извлечь. Используется нулевой индекс.
Возвращаемое значение
Комментарии
Примеры
await Excel.run(async (context) => {
const sheetName = "Sheet1";
const rangeAddress = "A1:F8";
const worksheet = context.workbook.worksheets.getItem(sheetName);
const cell = worksheet.getCell(0,0);
cell.load('address');
await context.sync();
console.log(cell.address);
});
getNext(visibleOnly)
Возвращает лист, следующий за этим. Если после этого листа нет, этот метод вызовет ошибку.
getNext(visibleOnly?: boolean): Excel.Worksheet;
Параметры
- visibleOnly
-
boolean
Необязательный параметр. Если true
значение , учитывает только видимые листы, пропуская все скрытые листы.
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/reference-worksheets-by-relative-position.yaml
await Excel.run(async (context) => {
const sheets = context.workbook.worksheets;
// We don't want to include the default worksheet that was created
// when the workbook was created, so our "firstSheet" will be the one
// after the literal first. Note chaining of navigation methods.
const firstSheet = sheets.getFirst().getNext();
const lastSheet = sheets.getLast();
const firstTaxRateRange = firstSheet.getRange("B2");
const lastTaxRateRange = lastSheet.getRange("B2");
firstSheet.load("name");
lastSheet.load("name");
firstTaxRateRange.load("text");
lastTaxRateRange.load("text");
await context.sync();
let firstYear = firstSheet.name.substr(5, 4);
let lastYear = lastSheet.name.substr(5, 4);
console.log(`Tax Rate change from ${firstYear} to ${lastYear}`, `Tax rate for ${firstYear}: ${firstTaxRateRange.text[0][0]}\nTax rate for ${lastYear}: ${lastTaxRateRange.text[0][0]}`)
await context.sync();
});
getNextOrNullObject(visibleOnly)
Возвращает лист, следующий за этим. Если после этого листа нет, этот метод возвращает объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getNextOrNullObject(visibleOnly?: boolean): Excel.Worksheet;
Параметры
- visibleOnly
-
boolean
Необязательный параметр. Если true
значение , учитывает только видимые листы, пропуская все скрытые листы.
Возвращаемое значение
Комментарии
getPrevious(visibleOnly)
Возвращает лист, предшествующий этому листу. Если предыдущих листов нет, этот метод вызовет ошибку.
getPrevious(visibleOnly?: boolean): Excel.Worksheet;
Параметры
- visibleOnly
-
boolean
Необязательный параметр. Если true
значение , учитывает только видимые листы, пропуская все скрытые листы.
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/54-worksheet/reference-worksheets-by-relative-position.yaml
await Excel.run(async (context) => {
const sheets = context.workbook.worksheets;
const currentSheet = sheets.getActiveWorksheet();
const previousYearSheet = currentSheet.getPrevious();
const currentTaxDueRange = currentSheet.getRange("C2");
const previousTaxDueRange = previousYearSheet.getRange("C2");
currentSheet.load("name");
previousYearSheet.load("name");
currentTaxDueRange.load("text");
previousTaxDueRange.load("text");
await context.sync();
let currentYear = currentSheet.name.substr(5, 4);
let previousYear = previousYearSheet.name.substr(5, 4);
console.log("Two Year Tax Due Comparison", `Tax due for ${currentYear} was ${currentTaxDueRange.text[0][0]}\nTax due for ${previousYear} was ${previousTaxDueRange.text[0][0]}`)
await context.sync();
});
getPreviousOrNullObject(visibleOnly)
Возвращает лист, предшествующий этому листу. Если предыдущих листов нет, этот метод возвращает объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getPreviousOrNullObject(visibleOnly?: boolean): Excel.Worksheet;
Параметры
- visibleOnly
-
boolean
Необязательный параметр. Если true
значение , учитывает только видимые листы, пропуская все скрытые листы.
Возвращаемое значение
Комментарии
getRange(address)
Range
Возвращает объект , представляющий один прямоугольный блок ячеек, заданный адресом или именем.
getRange(address?: string): Excel.Range;
Параметры
- address
-
string
Необязательный параметр. Строка, представляющая адрес или имя диапазона. Например, "A1:B2". Если аргумент не указан, возвращается весь диапазон листа.
Возвращаемое значение
Комментарии
Примеры
// Use the range address to get the range object.
await Excel.run(async (context) => {
const sheetName = "Sheet1";
const rangeAddress = "A1:F8";
const worksheet = context.workbook.worksheets.getItem(sheetName);
const range = worksheet.getRange(rangeAddress);
range.load('cellCount');
await context.sync();
console.log(range.cellCount);
});
getRangeByIndexes(startRow, startColumn, rowCount, columnCount)
Возвращает объект, Range
начинающийся с определенного индекса строки и индекса столбца и охватывающий определенное количество строк и столбцов.
getRangeByIndexes(startRow: number, startColumn: number, rowCount: number, columnCount: number): Excel.Range;
Параметры
- startRow
-
number
Начальная строка (с нулевым индексом).
- startColumn
-
number
Начальный столбец (нулевой индекс).
- rowCount
-
number
Количество строк для включения в диапазон.
- columnCount
-
number
Количество столбцов для включения в диапазон.
Возвращаемое значение
Комментарии
getRanges(address)
RangeAreas
Возвращает объект , представляющий один или несколько блоков прямоугольных диапазонов, заданных адресом или именем.
getRanges(address?: string): Excel.RangeAreas;
Параметры
- address
-
string
Необязательный параметр. Строка, содержащая разделенные запятыми или разделенные точкой с запятой адреса или имена отдельных диапазонов. Например, "A1:B2, A5:B5" или "A1:B2; A5:B5". Если этот параметр не указан, RangeAreas
возвращается объект для всего листа.
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/42-range/range-areas.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
const specifiedRanges = sheet.getRanges("D3:D5, G3:G5");
specifiedRanges.format.fill.color = "pink";
await context.sync();
})
getUsedRange(valuesOnly)
Используемый диапазон — это наименьший диапазон, включающий в себя все ячейки с определенным значением или форматированием. Если весь лист пуст, эта функция вернет верхнюю левую ячейку (т. е. не вызовет ошибку).
getUsedRange(valuesOnly?: boolean): Excel.Range;
Параметры
- valuesOnly
-
boolean
Необязательный параметр. Если true
задано значение , то в качестве используемых ячеек учитываются только ячейки со значениями (игнорируется форматирование). [Набор API: ExcelApi 1.2]
Возвращаемое значение
Комментарии
Примеры
await Excel.run(async (context) => {
const wSheetName = 'Sheet1';
const worksheet = context.workbook.worksheets.getItem(wSheetName);
const usedRange = worksheet.getUsedRange();
usedRange.load('address');
await context.sync();
console.log(usedRange.address);
});
getUsedRangeOrNullObject(valuesOnly)
Используемый диапазон — это наименьший диапазон, включающий в себя все ячейки с определенным значением или форматированием. Если весь лист пуст, то этот метод возвращает объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getUsedRangeOrNullObject(valuesOnly?: boolean): Excel.Range;
Параметры
- valuesOnly
-
boolean
Необязательный параметр. Учитывает только ячейки со значениями.
Возвращаемое значение
Комментарии
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(options?: Excel.Interfaces.WorksheetLoadOptions): Excel.Worksheet;
Параметры
Предоставляет параметры свойств объекта для загрузки.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNames?: string | string[]): Excel.Worksheet;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, указывающих свойства для загрузки.
Возвращаемое значение
Примеры
// Get worksheet properties based on sheet name.
await Excel.run(async (context) => {
const wSheetName = 'Sheet1';
const worksheet = context.workbook.worksheets.getItem(wSheetName);
worksheet.load('position')
await context.sync();
console.log(worksheet.position);
});
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Excel.Worksheet;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select
— это строка с разделителями-запятыми, указывающая загружаемые свойства, и propertyNamesAndPaths.expand
строка с разделителями-запятыми, указывающая загружаемые свойства навигации.
Возвращаемое значение
replaceAll(text, replacement, criteria)
Находит и заменяет определенную строку на основе условий, указанных в текущем листе.
replaceAll(text: string, replacement: string, criteria: Excel.ReplaceCriteria): OfficeExtension.ClientResult<number>;
Параметры
- text
-
string
Строка для поиска.
- replacement
-
string
Строка, которая заменяет исходную строку.
- criteria
- Excel.ReplaceCriteria
Дополнительные условия замены.
Возвращаемое значение
OfficeExtension.ClientResult<number>
Количество выполненных замен.
Комментарии
set(properties, options)
Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа.
set(properties: Interfaces.WorksheetUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
- properties
- Excel.Interfaces.WorksheetUpdateData
Объект JavaScript со свойствами, структурированными изоморфно по свойствам объекта, для которого вызывается метод .
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект свойств пытается задать какие-либо свойства, доступные только для чтения.
Возвращаемое значение
void
Примеры
// Set the color and name of the current worksheet.
await Excel.run(async (context) => {
const activeSheet = context.workbook.worksheets.getActiveWorksheet();
activeSheet.set({
tabColor: "yellow",
name: "MySheet"
});
await context.sync();
});
set(properties)
Задает несколько свойств объекта одновременно на основе существующего загруженного объекта.
set(properties: Excel.Worksheet): void;
Параметры
- properties
- Excel.Worksheet
Возвращаемое значение
void
showOutlineLevels(rowLevels, columnLevels)
Показывает группы строк или столбцов по уровням структуры. Структурирует группы и суммирует список данных на листе. Параметры rowLevels
и columnLevels
указывают, сколько уровней структуры будет отображаться. Допустимый диапазон аргументов находится в диапазоне от 0 до 8. Значение 0 не изменяет текущее отображение. Значение, превышающее текущее количество уровней, отображает все уровни.
showOutlineLevels(rowLevels: number, columnLevels: number): void;
Параметры
- rowLevels
-
number
Количество отображаемых уровней строк структуры.
- columnLevels
-
number
Количество уровней столбцов структуры для отображения.
Возвращаемое значение
void
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/42-range/outline.yaml
Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
// This shows the top 3 outline levels; collapsing any additional sublevels.
sheet.showOutlineLevels(3, 3);
await context.sync();
});
toJSON()
Переопределяет метод JavaScript toJSON()
, чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify()
. (JSON.stringify
в свою очередь вызывает toJSON
метод переданного ему объекта.) В то время как исходный Excel.Worksheet
объект является объектом API, toJSON
метод возвращает обычный объект JavaScript (типизированный как Excel.Interfaces.WorksheetData
), который содержит неглубокие копии всех загруженных дочерних свойств из исходного объекта.
toJSON(): Excel.Interfaces.WorksheetData;
Возвращаемое значение
Сведения о событии
onActivated
Происходит при активации листа.
readonly onActivated: OfficeExtension.EventHandlers<Excel.WorksheetActivatedEventArgs>;
Тип события
Комментарии
Примеры
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sample");
sheet.onActivated.add(function (event) {
return Excel.run(async (context) => {
console.log("The activated worksheet ID is: " + event.worksheetId);
await context.sync();
});
});
await context.sync();
});
onCalculated
Происходит при вычислении листа.
readonly onCalculated: OfficeExtension.EventHandlers<Excel.WorksheetCalculatedEventArgs>;
Тип события
Комментарии
Примеры
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sample");
sheet.onCalculated.add(function (event) {
return Excel.run(async (context) => {
console.log("The worksheet has recalculated.");
await context.sync();
});
});
await context.sync();
});
onChanged
Происходит при изменении данных на определенном листе.
readonly onChanged: OfficeExtension.EventHandlers<Excel.WorksheetChangedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-worksheet.yaml
await Excel.run(async (context) => {
let sheet = context.workbook.worksheets.getItem("Sample");
sheet.onChanged.add(onChange);
await context.sync();
console.log("Added a worksheet-level data-changed event handler.");
});
onColumnSorted
Возникает при сортировке одного или нескольких столбцов. Это происходит в результате операции сортировки слева направо.
readonly onColumnSorted: OfficeExtension.EventHandlers<Excel.WorksheetColumnSortedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/event-column-and-row-sort.yaml
await Excel.run(async (context) => {
console.log("Adding column handler");
const sheet = context.workbook.worksheets.getActiveWorksheet();
// This will fire whenever a column has been moved as the result of a sort action.
sheet.onColumnSorted.add((event) => {
return Excel.run((context) => {
console.log("Column sorted: " + event.address);
const sheet = context.workbook.worksheets.getActiveWorksheet();
// Clear formatting for section, then highlight the sorted area.
sheet.getRange("A1:E5").format.fill.clear();
if (event.address !== "") {
sheet.getRanges(event.address).format.fill.color = "yellow";
}
return context.sync();
});
});
});
onDeactivated
Происходит при отключении листа.
readonly onDeactivated: OfficeExtension.EventHandlers<Excel.WorksheetDeactivatedEventArgs>;
Тип события
Комментарии
Примеры
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sample");
sheet.onDeactivated.add(function (event) {
return Excel.run(async (context) => {
console.log("The deactivated worksheet is: " + event.worksheetId);
await context.sync();
});
});
await context.sync();
});
onFormatChanged
Возникает, если изменен формат указанного листа.
readonly onFormatChanged: OfficeExtension.EventHandlers<Excel.WorksheetFormatChangedEventArgs>;
Тип события
Комментарии
onFormulaChanged
Происходит при изменении одной или нескольких формул на этом листе. Это событие происходит при изменении самой формулы, а не значения данных, полученных в результате вычисления формулы.
readonly onFormulaChanged: OfficeExtension.EventHandlers<Excel.WorksheetFormulaChangedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-formula-changed.yaml
await Excel.run(async (context) => {
// Retrieve the worksheet named "Sample".
let sheet = context.workbook.worksheets.getItem("Sample");
// Register the formula changed event handler for this worksheet.
sheet.onFormulaChanged.add(formulaChangeHandler);
await context.sync();
console.log("Registered a formula changed event handler for this worksheet.");
});
...
async function formulaChangeHandler(event: Excel.WorksheetFormulaChangedEventArgs) {
await Excel.run(async (context) => {
// Retrieve details about the formula change event.
const cellAddress = event.formulaDetails[0].cellAddress;
const previousFormula = event.formulaDetails[0].previousFormula;
const source = event.source;
// Print out the change event details.
console.log(
`The formula in cell ${cellAddress} changed.
The previous formula was: ${previousFormula}.
The source of the change was: ${source}.`
);
});
}
onProtectionChanged
Происходит при изменении состояния защиты листа.
readonly onProtectionChanged: OfficeExtension.EventHandlers<Excel.WorksheetProtectionChangedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-worksheet-protection.yaml
// This function registers an event handler for the onProtectionChanged event of a worksheet.
await Excel.run(async (context) => {
// Set "Sample" as the active worksheet.
context.workbook.worksheets.getItemOrNullObject("Sample").delete();
const sheet = context.workbook.worksheets.add("Sample");
sheet.activate();
// Register the onProtectionChanged event handler.
sheet.onProtectionChanged.add(checkProtection);
await context.sync();
console.log("Added a worksheet protection change event handler.");
});
...
async function checkProtection(event: Excel.WorksheetProtectionChangedEventArgs) {
// This function is an event handler that returns the protection status of a worksheet
// and information about the changed worksheet.
await Excel.run(async (context) => {
const protectionStatus = event.isProtected;
const worksheetId = event.worksheetId;
const source = event.source;
console.log("Protection status changed. Protection status is now: " + protectionStatus + ".");
console.log(" ID of changed worksheet: " + worksheetId + ".");
console.log(" Source of change event: " + source + ".");
});
}
onRowHiddenChanged
Происходит при изменении скрытого состояния одной или нескольких строк на определенном листе.
readonly onRowHiddenChanged: OfficeExtension.EventHandlers<Excel.WorksheetRowHiddenChangedEventArgs>;
Тип события
Комментарии
Примеры
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
sheet.onRowHiddenChanged.add(function (event) {
return Excel.run(async (context) => {
console.log(`Row ${event.address} is now ${event.changeType}`);
await context.sync();
});
});
await context.sync();
});
onRowSorted
Возникает при сортировке одной или нескольких строк. Происходит в результате операции сортировки сверху вниз.
readonly onRowSorted: OfficeExtension.EventHandlers<Excel.WorksheetRowSortedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/event-column-and-row-sort.yaml
await Excel.run(async (context) => {
console.log("Adding row handler");
const sheet = context.workbook.worksheets.getActiveWorksheet();
// This will fire whenever a row has been moved as the result of a sort action.
sheet.onRowSorted.add((event) => {
return Excel.run((context) => {
console.log("Row sorted: " + event.address);
const sheet = context.workbook.worksheets.getActiveWorksheet();
// Clear formatting for section, then highlight the sorted area.
sheet.getRange("A1:E5").format.fill.clear();
if (event.address !== "") {
sheet.getRanges(event.address).format.fill.color = "yellow";
}
return context.sync();
});
});
});
onSelectionChanged
Происходит при изменении выделения на определенном листе.
readonly onSelectionChanged: OfficeExtension.EventHandlers<Excel.WorksheetSelectionChangedEventArgs>;
Тип события
Комментарии
Примеры
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getItem("Sample");
sheet.onSelectionChanged.add(function (event) {
return Excel.run(async (context) => {
console.log("The selected range has changed to: " + event.address);
await context.sync();
});
});
await context.sync();
});
onSingleClicked
Происходит при щелчке левой кнопкой мыши или нажатии на листе. Это событие не будет запущено при щелчке в следующих случаях:
Пользователь перетаскивает мышь для множественного выбора.
Пользователь выбирает ячейку в режиме, когда для ссылок на формулы выбираются аргументы ячеек.
readonly onSingleClicked: OfficeExtension.EventHandlers<Excel.WorksheetSingleClickedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/event-worksheet-single-click.yaml
await Excel.run(async (context) => {
const sheet = context.workbook.worksheets.getActiveWorksheet();
sheet.onSingleClicked.add((event) => {
return Excel.run((context) => {
console.log(`Click detected at ${event.address} (pixel offset from upper-left cell corner: ${event.offsetX}, ${event.offsetY})`);
return context.sync();
});
});
console.log("The worksheet click handler is registered.");
await context.sync();
});
Office Add-ins