次の方法で共有


Excel JavaScript API を使用してノートを操作する

この記事では、Excel JavaScript API を使用してブック内のメモを追加、変更、削除する方法について説明します。 ノートの詳細については、 Excel でのコメントとメモの挿入に 関する記事を参照してください。 ノートとコメントの違いについては、「 スレッドコメントとノートの違い」を参照してください。

ノートは個々のセルに関連付けられています。 十分なアクセス許可を持つブックを表示するすべてのユーザーがメモを表示できます。 ブック内のメモは、 Workbook.notes プロパティによって追跡されます。 これには、ユーザーによって作成されたメモと、アドインによって作成されたメモも含まれます。 Workbook.notes プロパティは、Note オブジェクトのコレクションを含む NoteCollection オブジェクトです。 ノートには 、ワークシート レベルでもアクセスできます。

ヒント

Excel JavaScript API を使用してコメントを追加および編集する方法については、「Excel JavaScript API を 使用してコメントを操作する」を参照してください。

メモを追加する

ブックにメモを追加するには、 NoteCollection.add メソッドを使用します。 このメソッドは、次の 2 つのパラメーターを受け取ります。

  • cellAddress: コメントが追加されるセル。 これは、文字列または Range オブジェクトのいずれかです。 範囲は 1 つのセルである必要があります。
  • content: コメントの内容を文字列として指定します。

次のコード サンプルは、ワークシート内の選択したセルにメモを追加する方法を示しています。

await Excel.run(async (context) => {
    // This function adds a note to the selected cell.
    const selectedRange = context.workbook.getSelectedRange();

    // Note that an InvalidArgument error is thrown if multiple cells are selected.
    context.workbook.notes.add(selectedRange, "The first note.");
    await context.sync();
});

ノートの表示設定を変更する

既定では、ユーザーがノートを含むセルの上にマウス ポインターを置くか、ブックにノートを表示するように設定しない限り、ノートの内容は非表示になります。 メモを表示するには、 Note.visible プロパティを使用します。 次のコード サンプルは、ノートの可視性を変更する方法を示しています。

await Excel.run(async (context) => {
    // This function sets the note on cell A1 to visible.
    const sheet = context.workbook.worksheets.getActiveWorksheet();
    const firstNote = sheet.notes.getItem("A1");

    firstNote.load();
    await context.sync();

    firstNote.visible = true;
});

ノートの内容を編集する

ノートの内容を編集するには、 Note.content プロパティを使用します。 次の例は、 NoteCollectionの最初のノートの内容を変更する方法を示しています。

await Excel.run(async (context) => {
    // This function changes the content in the first note.
    const sheet = context.workbook.worksheets.getActiveWorksheet();
    const note = sheet.notes.getItemAt(0);

    note.content = "Changing the content of the first note.";
    await context.sync();
});

注:

メモの作成者を取得するには、 Note.authorName プロパティを使用します。 作成者名は読み取り専用プロパティです。

ノートのサイズを変更する

ノートを大きくまたは小さくするには、 Note.height プロパティと Note.width プロパティを使用します。

次の例は、 NoteCollectionの最初のノートのサイズを設定する方法を示しています。

await Excel.run(async (context) => {
    // This function changes the height and width of the first note.
    const sheet = context.workbook.worksheets.getActiveWorksheet();
    const note = sheet.notes.getItemAt(0);

    note.width = 400;
    note.height = 200;    

    await context.sync();
});

メモを削除する

メモを削除するには、 Note.delete メソッドを使用します。 次の例は、セル A2 にアタッチされているノートを削除する方法を示しています。

await Excel.run(async (context) => {
    // This function deletes the note from cell A2.
    const sheet = context.workbook.worksheets.getActiveWorksheet();
    const note = sheet.notes.getItem("A2");

    note.delete();
    await context.sync();
});

関連項目