Excel.CommentCollection class

Представляет коллекцию объектов примечаний, являющихся частью книги.

Extends

Свойства

context

Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.

items

Получает загруженные дочерние элементы в этой коллекции.

Методы

add(cellAddress, content, contentType)

Создает новое примечание с указанным содержимым в определенной ячейке. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

add(cellAddress, content, contentType)

Создает новое примечание с указанным содержимым в определенной ячейке. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

getCount()

Получает количество примечаний в коллекции.

getItem(commentId)

Получает примечание из коллекции на основе его идентификатора.

getItemAt(index)

Получает примечание из коллекции на основе его позиции.

getItemByCell(cellAddress)

Получает примечание из указанной ячейки. Если в ячейке нет примечания, создается ошибка.

getItemByReplyId(replyId)

Получает комментарий, к которому относится данный ответ.

getItemOrNullObject(commentId)

Получает примечание из коллекции на основе его идентификатора. Если объекта comment не существует, этот метод возвращает объект со свойством isNullObject , установленным в trueзначение . Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.

load(options)

Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().

load(propertyNames)

Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().

load(propertyNamesAndPaths)

Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().

toJSON()

Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Excel.CommentCollection объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Excel.Interfaces.CommentCollectionData), который содержит массив «items» с неглубокими копиями любых загруженных свойств из элементов коллекции.

События

onAdded

Возникает при добавлении комментариев.

onChanged

Возникает при изменении комментариев или ответов в коллекции комментариев, в том числе при удалении ответов.

onDeleted

Возникает при удалении примечаний в коллекции примечаний.

Сведения о свойстве

context

Контекст запроса, связанный с объектом. Это соединяет процесс надстройки с процессом основного приложения Office.

context: RequestContext;

Значение свойства

items

Получает загруженные дочерние элементы в этой коллекции.

readonly items: Excel.Comment[];

Значение свойства

Сведения о методе

add(cellAddress, content, contentType)

Создает новое примечание с указанным содержимым в определенной ячейке. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

add(cellAddress: Range | string, content: CommentRichContent | string, contentType?: Excel.ContentType): Excel.Comment;

Параметры

cellAddress

Excel.Range | string

Ячейка, в которую добавляется примечание. Это может быть Range объект или строка. Если это строка, она должна содержать полный адрес, включая имя листа. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

content

Excel.CommentRichContent | string

Содержание комментария. Это может быть строка или CommentRichContent объект. Строки используются для обычного текста. CommentRichContent объекты позволяют использовать другие функции комментариев, такие как упоминания. [Набор API: ExcelApi 1.10 для строки, 1.11 для объекта CommentRichContent]

contentType
Excel.ContentType

Необязательный параметр. Тип содержимого комментария. Значение по умолчанию — перечисление ContentType.Plain. [Набор API: ExcelApi 1.10 для Enum ContentType.Plain, 1.11 для Enum ContentType.Mention]

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/12-comments-and-notes/comment-basics.yaml

await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getItem("Comments");

    // Note that an InvalidArgument error will be thrown if multiple cells passed to `comment.add`.
    sheet.comments.add("A2", "TODO: add data.");
    await context.sync();
});

add(cellAddress, content, contentType)

Создает новое примечание с указанным содержимым в определенной ячейке. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

add(cellAddress: Range | string, content: CommentRichContent | string, contentType?: "Plain" | "Mention"): Excel.Comment;

Параметры

cellAddress

Excel.Range | string

Ячейка, в которую добавляется примечание. Это может быть Range объект или строка. Если это строка, она должна содержать полный адрес, включая имя листа. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

content

Excel.CommentRichContent | string

Содержание комментария. Это может быть строка или CommentRichContent объект. Строки используются для обычного текста. CommentRichContent объекты позволяют использовать другие функции комментариев, такие как упоминания. [Набор API: ExcelApi 1.10 для строки, 1.11 для объекта CommentRichContent]

contentType

"Plain" | "Mention"

Необязательный параметр. Тип содержимого комментария. Значение по умолчанию — перечисление ContentType.Plain. [Набор API: ExcelApi 1.10 для Enum ContentType.Plain, 1.11 для Enum ContentType.Mention]

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

getCount()

Получает количество примечаний в коллекции.

getCount(): OfficeExtension.ClientResult<number>;

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

getItem(commentId)

Получает примечание из коллекции на основе его идентификатора.

getItem(commentId: string): Excel.Comment;

Параметры

commentId

string

Идентификатор комментария.

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

getItemAt(index)

Получает примечание из коллекции на основе его позиции.

getItemAt(index: number): Excel.Comment;

Параметры

index

number

Значение индекса получаемого объекта. Используется нулевой индекс.

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/12-comments-and-notes/comment-resolution.yaml

await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getItem("Comments");
    sheet.comments.getItemAt(0).resolved = false;
    await context.sync();
});

getItemByCell(cellAddress)

Получает примечание из указанной ячейки. Если в ячейке нет примечания, создается ошибка.

getItemByCell(cellAddress: Range | string): Excel.Comment;

Параметры

cellAddress

Excel.Range | string

Ячейка, в которой находится примечание. Это может быть Range объект или строка. Если это строка, она должна содержать полный адрес, включая имя листа. Если InvalidArgument указанный диапазон превышает одну ячейку, возникает ошибка.

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/12-comments-and-notes/comment-replies.yaml

await Excel.run(async (context) => {
    const comment = context.workbook.comments.getItemByCell("Comments!A1");
    const replyCount = comment.replies.getCount();
    // Sync to get the current number of comment replies.
    await context.sync();

    // Get the last comment reply in the comment thread.
    const reply = comment.replies.getItemAt(replyCount.value - 1);
    reply.load(["authorEmail", "authorName", "creationDate"]);
    // Sync to load the reply metadata.
    await context.sync();

    console.log(`Latest reply: ${reply.creationDate.toDateString()}: ${reply.authorName} ${reply.authorEmail})`);
    await context.sync();
});

getItemByReplyId(replyId)

Получает комментарий, к которому относится данный ответ.

getItemByReplyId(replyId: string): Excel.Comment;

Параметры

replyId

string

Идентификатор ответа на комментарий.

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.10

getItemOrNullObject(commentId)

Получает примечание из коллекции на основе его идентификатора. Если объекта comment не существует, этот метод возвращает объект со свойством isNullObject , установленным в trueзначение . Дополнительные сведения см. в разделе Методы и свойства *OrNullObject.

getItemOrNullObject(commentId: string): Excel.Comment;

Параметры

commentId

string

Идентификатор комментария.

Возвращаемое значение

Комментарии

Набор API: ExcelApi 1.14

load(options)

Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().

load(options?: Excel.Interfaces.CommentCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.CommentCollection;

Параметры

options

Excel.Interfaces.CommentCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions

Предоставляет параметры для загружаемых свойств объекта.

Возвращаемое значение

load(propertyNames)

Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().

load(propertyNames?: string | string[]): Excel.CommentCollection;

Параметры

propertyNames

string | string[]

Строка с разделителями-запятыми или массив строк, которые определяют свойства для загрузки.

Возвращаемое значение

load(propertyNamesAndPaths)

Добавляет в очередь команду для загрузки указанных свойств объекта. Перед чтением свойств требуется вызвать метод context.sync().

load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.CommentCollection;

Параметры

propertyNamesAndPaths
OfficeExtension.LoadOption

propertyNamesAndPaths.select — это строка с разделителями-запятыми, указывающая загружаемые свойства, и строка propertyNamesAndPaths.expand через запятую, указывающая свойства навигации для загрузки.

Возвращаемое значение

toJSON()

Переопределяет метод JavaScript toJSON() , чтобы обеспечить более полезные выходные данные при передаче объекта API в JSON.stringify(). (JSON.stringify, в свою очередь, вызывает toJSON метод переданного ему объекта.) В то время как исходный Excel.CommentCollection объект является объектом API, toJSON метод возвращает простой объект JavaScript (типизированный как Excel.Interfaces.CommentCollectionData), который содержит массив «items» с неглубокими копиями любых загруженных свойств из элементов коллекции.

toJSON(): Excel.Interfaces.CommentCollectionData;

Возвращаемое значение

Сведения о событии

onAdded

Возникает при добавлении комментариев.

readonly onAdded: OfficeExtension.EventHandlers<Excel.CommentAddedEventArgs>;

Тип события

Комментарии

Набор API: ExcelApi 1.12

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-comment-event-handler.yaml

await Excel.run(async (context) => {
    const comments = context.workbook.worksheets.getActiveWorksheet().comments;

    // Register the onAdded, onChanged, and onDeleted comment event handlers.
    comments.onAdded.add(commentAdded);
    comments.onChanged.add(commentChanged);
    comments.onDeleted.add(commentDeleted);

    await context.sync();

    console.log("Added event handlers for when comments are added, changed, or deleted.");
});

...

async function commentAdded(event: Excel.CommentAddedEventArgs) {
    // Retrieve the added comment using the comment ID.
    // Note: This function assumes only a single comment is added at a time.
    await Excel.run(async (context) => {
        const addedComment = context.workbook.comments.getItem(event.commentDetails[0].commentId);

        // Load the added comment's data.
        addedComment.load(["content", "authorName", "creationDate"]);

        await context.sync();

        // Print out the added comment's data.
        console.log(`A comment was added:`);
        console.log(`    ID: ${event.commentDetails[0].commentId}`);
        console.log(`    Comment content: ${addedComment.content}`);
        console.log(`    Comment author: ${addedComment.authorName}`);
        console.log(`    Creation date: ${addedComment.creationDate}`);
    });
}

onChanged

Возникает при изменении комментариев или ответов в коллекции комментариев, в том числе при удалении ответов.

readonly onChanged: OfficeExtension.EventHandlers<Excel.CommentChangedEventArgs>;

Тип события

Комментарии

Набор API: ExcelApi 1.12

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-comment-event-handler.yaml

await Excel.run(async (context) => {
    const comments = context.workbook.worksheets.getActiveWorksheet().comments;

    // Register the onAdded, onChanged, and onDeleted comment event handlers.
    comments.onAdded.add(commentAdded);
    comments.onChanged.add(commentChanged);
    comments.onDeleted.add(commentDeleted);

    await context.sync();

    console.log("Added event handlers for when comments are added, changed, or deleted.");
});

...

async function commentChanged(event: Excel.CommentChangedEventArgs) {
    // Retrieve the changed comment using the comment ID.
    // Note: This function assumes only a single comment is changed at a time.
    await Excel.run(async (context) => {
        const changedComment = context.workbook.comments.getItem(event.commentDetails[0].commentId);

        // Load the changed comment's data.
        changedComment.load(["content", "authorName", "creationDate"]);

        await context.sync();

        // Print out the changed comment's data.
        console.log(`A comment was changed:`);
        console.log(`    ID: ${event.commentDetails[0].commentId}`);
        console.log(`    Updated comment content: ${changedComment.content}`);
        console.log(`    Comment author: ${changedComment.authorName}`);
        console.log(`    Creation date: ${changedComment.creationDate}`);
    });
}

onDeleted

Возникает при удалении примечаний в коллекции примечаний.

readonly onDeleted: OfficeExtension.EventHandlers<Excel.CommentDeletedEventArgs>;

Тип события

Комментарии

Набор API: ExcelApi 1.12

Примеры

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/30-events/events-comment-event-handler.yaml

await Excel.run(async (context) => {
    const comments = context.workbook.worksheets.getActiveWorksheet().comments;

    // Register the onAdded, onChanged, and onDeleted comment event handlers.
    comments.onAdded.add(commentAdded);
    comments.onChanged.add(commentChanged);
    comments.onDeleted.add(commentDeleted);

    await context.sync();

    console.log("Added event handlers for when comments are added, changed, or deleted.");
});

...

async function commentDeleted(event: Excel.CommentDeletedEventArgs) {
    // Print out the deleted comment's ID.
    // Note: This function assumes only a single comment is deleted at a time.
    await Excel.run(async (context) => {
        console.log(`A comment was deleted:`);
        console.log(`    ID: ${event.commentDetails[0].commentId}`);
    });
}