Excel.Workbook class
Workbook — это объект верхнего уровня, содержащий связанные объекты книги, такие как листы, таблицы и диапазоны. Дополнительные сведения об объектной модели книг см. в статье Работа с книгами с помощью API JavaScript для Excel.
- Extends
Комментарии
Свойства
application | Представляет экземпляр приложения Excel, содержащий эту книгу. |
auto |
Указывает, находится ли книга в режиме автосохранений. |
bindings | Представляет коллекцию привязок, включенных в книгу. |
calculation |
Возвращает номер версии модуля вычислений Excel. |
chart |
Значение true, если все диаграммы в книге отслеживают точки фактических данных, с которыми они связаны. False, если диаграммы отслеживают индекс точек данных. |
comments | Представляет коллекцию комментариев, связанных с книгой. |
context | Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office. |
custom |
Представляет коллекцию настраиваемых XML-частей, содержащихся в этой книге. |
data |
Представляет все подключения к данным в книге. |
functions | Представляет коллекцию функций листа, которые можно использовать для вычислений. |
is |
Указывает, были ли изменения внесены с момента последнего сохранения книги. Для этого свойства можно присвоить значение , |
name | Получает имя книги. |
names | Представляет коллекцию именованных элементов с областью книги (именованные диапазоны и константы). |
pivot |
Представляет коллекцию сводных таблиц, сопоставленных с книгой. |
pivot |
Представляет коллекцию объектов PivotTableStyles, связанных с книгой. |
previously |
Указывает, сохранялась ли книга локально или в сети. |
properties | Получает свойства книги. |
protection | Возвращает объект защиты для книги. |
queries | Возвращает коллекцию Power Query запросов, входящих в книгу. |
read |
Возвращает значение |
settings | Представляет коллекцию параметров, связанных с книгой. |
slicers | Представляет коллекцию срезов, связанных с книгой. |
slicer |
Представляет коллекцию объектов SlicerStyles, связанных с книгой. |
styles | Представляет коллекцию стилей, связанных с книгой. |
tables | Представляет коллекцию таблиц, сопоставленных с книгой. |
table |
Представляет коллекцию объектов TableStyles, связанных с книгой. |
timeline |
Представляет коллекцию объектов TimelineStyles, связанных с книгой. |
use |
Значение true, если вычисления в книге выполняются только с той точностью чисел, с которой они отображаются. Данные навсегда потеряют точность при переключении этого свойства с |
worksheets | Представляет коллекцию листов, сопоставленных с книгой. |
Методы
close(close |
Закрывает текущую книгу. |
close(close |
Закрывает текущую книгу. |
get |
Получает текущую активную ячейку из книги. |
get |
Получает текущую активную диаграмму в книге. Если нет активной диаграммы, |
get |
Получает текущую активную диаграмму в книге. Если активной диаграммы нет, этот метод возвращает объект со свойством |
get |
Получает текущий активный срез в книге. Если активный срез отсутствует, |
get |
Получает текущий активный срез в книге. Если активного среза нет, то этот метод возвращает объект со свойством |
get |
Возвращает значение |
get |
Возвращает на |
get |
Возвращает выбранный в данный момент один диапазон из книги. Если выбрано несколько диапазонов, этот метод вызовет ошибку. |
get |
Получает текущий выделенный диапазон (один или несколько) в книге. В отличие от |
insert |
Вставляет указанные листы из исходной книги в текущую книгу. Примечание*. В настоящее время этот API поддерживается только для Office в Windows, Mac и Интернете. |
load(options) | Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
load(property |
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод |
save(save |
Сохраняет текущую книгу. |
save(save |
Сохраняет текущую книгу. |
set(properties, options) | Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа. |
set(properties) | Задает несколько свойств объекта одновременно на основе существующего загруженного объекта. |
toJSON() | Переопределяет метод JavaScript |
События
on |
Происходит при активации книги. Примечание. Это событие не сработает при открытии книги. |
on |
Происходит при изменении параметра автосохранение в книге. |
on |
Происходит при изменении выбора в документе. |
Сведения о свойстве
application
Представляет экземпляр приложения Excel, содержащий эту книгу.
readonly application: Excel.Application;
Значение свойства
Комментарии
autoSave
Указывает, находится ли книга в режиме автосохранений.
readonly autoSave: boolean;
Значение свойства
boolean
Комментарии
bindings
Представляет коллекцию привязок, включенных в книгу.
readonly bindings: Excel.BindingCollection;
Значение свойства
Комментарии
calculationEngineVersion
Возвращает номер версии модуля вычислений Excel.
readonly calculationEngineVersion: number;
Значение свойства
number
Комментарии
chartDataPointTrack
Значение true, если все диаграммы в книге отслеживают точки фактических данных, с которыми они связаны. False, если диаграммы отслеживают индекс точек данных.
chartDataPointTrack: boolean;
Значение свойства
boolean
Комментарии
comments
Представляет коллекцию комментариев, связанных с книгой.
readonly comments: Excel.CommentCollection;
Значение свойства
Комментарии
context
Контекст запроса, связанный с объектом . Это соединяет процесс надстройки с процессом ведущего приложения Office.
context: RequestContext;
Значение свойства
customXmlParts
Представляет коллекцию настраиваемых XML-частей, содержащихся в этой книге.
readonly customXmlParts: Excel.CustomXmlPartCollection;
Значение свойства
Комментарии
dataConnections
Представляет все подключения к данным в книге.
readonly dataConnections: Excel.DataConnectionCollection;
Значение свойства
Комментарии
functions
Представляет коллекцию функций листа, которые можно использовать для вычислений.
readonly functions: Excel.Functions;
Значение свойства
Комментарии
isDirty
Указывает, были ли изменения внесены с момента последнего сохранения книги. Для этого свойства можно присвоить значение , true
если нужно закрыть измененную книгу, не сохраняя ее или не запрашивая ее сохранение.
isDirty: boolean;
Значение свойства
boolean
Комментарии
name
Получает имя книги.
readonly name: string;
Значение свойства
string
Комментарии
names
Представляет коллекцию именованных элементов с областью книги (именованные диапазоны и константы).
readonly names: Excel.NamedItemCollection;
Значение свойства
Комментарии
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 workbook.
const pivotTables = context.workbook.pivotTables;
pivotTables.load("name");
await context.sync();
// Display the names in the console.
console.log("PivotTables in the workbook:")
pivotTables.items.forEach((pivotTable) => {
console.log(`\t${pivotTable.name}`);
});
});
pivotTableStyles
Представляет коллекцию объектов PivotTableStyles, связанных с книгой.
readonly pivotTableStyles: Excel.PivotTableStyleCollection;
Значение свойства
Комментарии
previouslySaved
Указывает, сохранялась ли книга локально или в сети.
readonly previouslySaved: boolean;
Значение свойства
boolean
Комментарии
properties
Получает свойства книги.
readonly properties: Excel.DocumentProperties;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/26-document/properties.yaml
await Excel.run(async (context) => {
let titleValue = "Excel document properties API";
let subjectValue = "Set and get document properties";
let keywordsValue = "Set and get operations";
let commentsValue = "This is an Excel document properties API code sample";
let categoryValue = "Office Add-ins";
let managerValue = "John";
let companyValue = "Microsoft";
let docProperties = context.workbook.properties;
// Set the writeable document properties.
docProperties.title = titleValue;
docProperties.subject = subjectValue;
docProperties.keywords = keywordsValue;
docProperties.comments = commentsValue;
docProperties.category = categoryValue;
docProperties.manager = managerValue;
docProperties.company = companyValue;
await context.sync();
console.log("Set the following document properties: title, subject, keywords, comments, category, manager, company.");
});
protection
Возвращает объект защиты для книги.
readonly protection: Excel.WorkbookProtection;
Значение свойства
Комментарии
queries
Возвращает коллекцию Power Query запросов, входящих в книгу.
readonly queries: Excel.QueryCollection;
Значение свойства
Комментарии
readOnly
Возвращает значение true
, если книга открыта в режиме только для чтения.
readonly readOnly: boolean;
Значение свойства
boolean
Комментарии
settings
Представляет коллекцию параметров, связанных с книгой.
readonly settings: Excel.SettingCollection;
Значение свойства
Комментарии
slicers
Представляет коллекцию срезов, связанных с книгой.
readonly slicers: Excel.SlicerCollection;
Значение свойства
Комментарии
slicerStyles
Представляет коллекцию объектов SlicerStyles, связанных с книгой.
readonly slicerStyles: Excel.SlicerStyleCollection;
Значение свойства
Комментарии
styles
Представляет коллекцию стилей, связанных с книгой.
readonly styles: Excel.StyleCollection;
Значение свойства
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/42-range/style.yaml
await Excel.run(async (context) => {
let styles = context.workbook.styles;
// Add a new style to the style collection.
// Styles is in the Home tab ribbon.
styles.add("Diagonal Orientation Style");
let newStyle = styles.getItem("Diagonal Orientation Style");
// The "Diagonal Orientation Style" properties.
newStyle.textOrientation = 38;
newStyle.autoIndent = true;
newStyle.includeProtection = true;
newStyle.shrinkToFit = true;
newStyle.locked = false;
await context.sync();
console.log("Successfully added a new style with diagonal orientation to the Home tab ribbon.");
});
tables
Представляет коллекцию таблиц, сопоставленных с книгой.
readonly tables: Excel.TableCollection;
Значение свойства
Комментарии
tableStyles
Представляет коллекцию объектов TableStyles, связанных с книгой.
readonly tableStyles: Excel.TableStyleCollection;
Значение свойства
Комментарии
timelineStyles
Представляет коллекцию объектов TimelineStyles, связанных с книгой.
readonly timelineStyles: Excel.TimelineStyleCollection;
Значение свойства
Комментарии
usePrecisionAsDisplayed
Значение true, если вычисления в книге выполняются только с той точностью чисел, с которой они отображаются. Данные навсегда потеряют точность при переключении этого свойства с false
на true
.
usePrecisionAsDisplayed: boolean;
Значение свойства
boolean
Комментарии
worksheets
Представляет коллекцию листов, сопоставленных с книгой.
readonly worksheets: Excel.WorksheetCollection;
Значение свойства
Комментарии
Сведения о методе
close(closeBehavior)
Закрывает текущую книгу.
close(closeBehavior?: Excel.CloseBehavior): void;
Параметры
- closeBehavior
- Excel.CloseBehavior
поведение закрытия книги.
Возвращаемое значение
void
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-save-and-close.yaml
await Excel.run(async (context) => {
context.workbook.close(Excel.CloseBehavior.save);
});
close(closeBehaviorString)
Закрывает текущую книгу.
close(closeBehaviorString?: "Save" | "SkipSave"): void;
Параметры
- closeBehaviorString
-
"Save" | "SkipSave"
поведение закрытия книги.
Возвращаемое значение
void
Комментарии
getActiveCell()
Получает текущую активную ячейку из книги.
getActiveCell(): Excel.Range;
Возвращаемое значение
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-get-active-cell.yaml
await Excel.run(async (context) => {
let myWorkbook = context.workbook;
let activeCell = myWorkbook.getActiveCell();
activeCell.load("address");
await context.sync();
console.log("The active cell is " + activeCell.address);
});
getActiveChart()
Получает текущую активную диаграмму в книге. Если нет активной диаграммы, ItemNotFound
возникает исключение.
getActiveChart(): Excel.Chart;
Возвращаемое значение
Комментарии
getActiveChartOrNullObject()
Получает текущую активную диаграмму в книге. Если активной диаграммы нет, этот метод возвращает объект со свойством isNullObject
true
. Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getActiveChartOrNullObject(): Excel.Chart;
Возвращаемое значение
Комментарии
getActiveSlicer()
Получает текущий активный срез в книге. Если активный срез отсутствует, ItemNotFound
возникает исключение.
getActiveSlicer(): Excel.Slicer;
Возвращаемое значение
Комментарии
getActiveSlicerOrNullObject()
Получает текущий активный срез в книге. Если активного среза нет, то этот метод возвращает объект со свойством isNullObject
.true
Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.
getActiveSlicerOrNullObject(): Excel.Slicer;
Возвращаемое значение
Комментарии
getIsActiveCollabSession()
Возвращает значение true
, если книга редактируется несколькими пользователями (с помощью совместного редактирования). Обратите внимание, что между изменением состояния книги и их отражением в результатах метода может возникнуть некоторая задержка.
getIsActiveCollabSession(): OfficeExtension.ClientResult<boolean>;
Возвращаемое значение
OfficeExtension.ClientResult<boolean>
Комментарии
getLinkedEntityCellValue(linkedEntityCellValueId)
Возвращает на LinkedEntityCellValue
основе предоставленного LinkedEntityId
.
getLinkedEntityCellValue(linkedEntityCellValueId: LinkedEntityId): OfficeExtension.ClientResult<LinkedEntityCellValue>;
Параметры
- linkedEntityCellValueId
- Excel.LinkedEntityId
Идентификатор, указывающий отдельный объект LinkedEntityCellValue
.
Возвращаемое значение
Комментарии
getSelectedRange()
Возвращает выбранный в данный момент один диапазон из книги. Если выбрано несколько диапазонов, этот метод вызовет ошибку.
getSelectedRange(): Excel.Range;
Возвращаемое значение
Комментарии
Примеры
await Excel.run(async (context) => {
const selectedRange = context.workbook.getSelectedRange();
selectedRange.load('address');
await context.sync();
console.log(selectedRange.address);
});
getSelectedRanges()
Получает текущий выделенный диапазон (один или несколько) в книге. В отличие от getSelectedRange()
, этот метод возвращает RangeAreas
объект, представляющий все выбранные диапазоны.
getSelectedRanges(): Excel.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 selectedRanges = context.workbook.getSelectedRanges();
selectedRanges.format.fill.color = "lightblue";
await context.sync();
})
insertWorksheetsFromBase64(base64File, options)
Вставляет указанные листы из исходной книги в текущую книгу.
Примечание*. В настоящее время этот API поддерживается только для Office в Windows, Mac и Интернете.
insertWorksheetsFromBase64(base64File: string, options?: Excel.InsertWorksheetOptions): OfficeExtension.ClientResult<string[]>;
Параметры
- base64File
-
string
Обязательно. Строка в кодировке Base64, представляющая файл исходной книги.
- options
- Excel.InsertWorksheetOptions
Необязательный параметр. Параметры, определяющие, какие листы следует вставлять и куда в книгу будут вставляться новые листы. По умолчанию все листы из исходной книги вставляются в конец текущей книги.
Возвращаемое значение
OfficeExtension.ClientResult<string[]>
Массив идентификаторов, соответствующих каждому вновь вставленному листу.
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-insert-external-worksheets.yaml
// Retrieve the file and set up an HTML FileReader element.
const myFile = <HTMLInputElement>document.getElementById("file");
const reader = new FileReader();
reader.onload = (event) => {
// Remove the metadata before the Base64-encoded string.
const startIndex = reader.result.toString().indexOf("base64,");
externalWorkbook = reader.result.toString().substr(startIndex + 7);
};
// Read the file as a data URL so that we can parse the Base64-encoded string.
reader.readAsDataURL(myFile.files[0]);
...
await Excel.run(async (context) => {
// Retrieve the source workbook.
const workbook = context.workbook;
// Set up the insert options.
const options = {
sheetNamesToInsert: [], // Insert all the worksheets from the source workbook.
positionType: Excel.WorksheetPositionType.after, // Insert after the `relativeTo` sheet.
relativeTo: "Sheet1" // The sheet relative to which the other worksheets will be inserted. Used with `positionType`.
};
// Insert the new worksheets.
workbook.insertWorksheetsFromBase64(externalWorkbook, options);
await context.sync();
});
load(options)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(options?: Excel.Interfaces.WorkbookLoadOptions): Excel.Workbook;
Параметры
Предоставляет параметры свойств объекта для загрузки.
Возвращаемое значение
load(propertyNames)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNames?: string | string[]): Excel.Workbook;
Параметры
- propertyNames
-
string | string[]
Строка с разделителями-запятыми или массив строк, указывающих свойства для загрузки.
Возвращаемое значение
load(propertyNamesAndPaths)
Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync()
.
load(propertyNamesAndPaths?: {
select?: string;
expand?: string;
}): Excel.Workbook;
Параметры
- propertyNamesAndPaths
-
{ select?: string; expand?: string; }
propertyNamesAndPaths.select
— это строка с разделителями-запятыми, указывающая загружаемые свойства, и propertyNamesAndPaths.expand
строка с разделителями-запятыми, указывающая загружаемые свойства навигации.
Возвращаемое значение
save(saveBehavior)
Сохраняет текущую книгу.
save(saveBehavior?: Excel.SaveBehavior): void;
Параметры
- saveBehavior
- Excel.SaveBehavior
Поведение сохранения должно быть "Сохранить" или "Запрос". Значение по умолчанию — "Сохранить".
Возвращаемое значение
void
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/50-workbook/workbook-save-and-close.yaml
await Excel.run(async (context) => {
context.workbook.save(Excel.SaveBehavior.save);
});
save(saveBehaviorString)
Сохраняет текущую книгу.
save(saveBehaviorString?: "Save" | "Prompt"): void;
Параметры
- saveBehaviorString
-
"Save" | "Prompt"
Поведение сохранения должно быть "Сохранить" или "Запрос". Значение по умолчанию — "Сохранить".
Возвращаемое значение
void
Комментарии
set(properties, options)
Задает несколько свойств объекта одновременно. Можно передать обычный объект с соответствующими свойствами или другой объект API того же типа.
set(properties: Interfaces.WorkbookUpdateData, options?: OfficeExtension.UpdateOptions): void;
Параметры
- properties
- Excel.Interfaces.WorkbookUpdateData
Объект JavaScript со свойствами, структурированными изоморфно по свойствам объекта, для которого вызывается метод .
- options
- OfficeExtension.UpdateOptions
Предоставляет возможность подавления ошибок, если объект свойств пытается задать какие-либо свойства, доступные только для чтения.
Возвращаемое значение
void
set(properties)
Задает несколько свойств объекта одновременно на основе существующего загруженного объекта.
set(properties: Excel.Workbook): void;
Параметры
- properties
- Excel.Workbook
Возвращаемое значение
void
toJSON()
Переопределяет метод JavaScript toJSON()
, чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify()
. (JSON.stringify
в свою очередь вызывает toJSON
метод переданного ему объекта.) В то время как исходный Excel.Workbook
объект является объектом API, toJSON
метод возвращает обычный объект JavaScript (типизированный как Excel.Interfaces.WorkbookData
), который содержит неглубокие копии всех загруженных дочерних свойств из исходного объекта.
toJSON(): Excel.Interfaces.WorkbookData;
Возвращаемое значение
Сведения о событии
onActivated
Происходит при активации книги. Примечание. Это событие не сработает при открытии книги.
readonly onActivated: OfficeExtension.EventHandlers<Excel.WorkbookActivatedEventArgs>;
Тип события
Комментарии
Примеры
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-workbook-activated.yaml
async function workbookActivated(event: Excel.WorkbookActivatedEventArgs) {
await Excel.run(async (context) => {
// Callback function for when the workbook is activated.
console.log("The workbook was activated.");
});
}
...
await Excel.run(async (context) => {
const workbook = context.workbook;
// Register the workbook activated event handler.
workbook.onActivated.add(workbookActivated);
await context.sync();
console.log("Added event handler for workbook activated.");
});
onAutoSaveSettingChanged
Происходит при изменении параметра автосохранение в книге.
readonly onAutoSaveSettingChanged: OfficeExtension.EventHandlers<Excel.WorkbookAutoSaveSettingChangedEventArgs>;
Тип события
Комментарии
onSelectionChanged
Происходит при изменении выбора в документе.
readonly onSelectionChanged: OfficeExtension.EventHandlers<Excel.SelectionChangedEventArgs>;
Тип события
Комментарии
Office Add-ins