Excel.Worksheet class

Excel のワークシートは、セルのグリッドです。 データ、テーブル、グラフなどを含めることができます。ワークシート オブジェクト モデルの詳細については、「Excel JavaScript API を使用してワークシートを操作する」を参照してください。

Extends

プロパティ

autoFilter

ワークシートの AutoFilter オブジェクトを表します。

charts

ワークシートの一部であるグラフのコレクションを返します。

comments

ワークシート上のすべての Comments オブジェクトの集まりを返します。

context

オブジェクトに関連付けられている要求コンテキスト。 これにより、アドインのプロセスが Office ホスト アプリケーションのプロセスに接続されます。

customProperties

ワークシート レベルのカスタム プロパティのコレクションを取得します。

enableCalculation

必要に応じてワークシートを再計算するかどうかを決定します。 必要に応じてワークシートを再計算する場合は true。 Excel がシートを再計算しない場合は false。

freezePanes

ワークシート上のフリーズしたウィンドウの操作に使用できるオブジェクトを取得します。

horizontalPageBreaks

ワークシートの水平改ページをまとめて取得します。 このコレクションには、手動の改ページのみが含まれます。

id

指定されたブックのワークシートを一意に識別する値を返します。 この識別子の値は、ワークシートの名前を変更したり移動したりしても同じままです。

name

ワークシートの表示名。 名前は 32 文字未満にする必要があります。

namedSheetViews

ワークシートに存在するシート ビューのコレクションを返します。

names

現在のワークシートにスコープされている名前のコレクション。

notes

ワークシート内のすべてのノート オブジェクトのコレクションを返します。

pageLayout

ワークシートの PageLayout オブジェクトを取得します。

pivotTables

ワークシートの一部になっているピボットテーブルのコレクション。

position

0 を起点とした、ブック内のワークシートの位置。

protection

ワークシートのシート保護オブジェクトを返します。

shapes

ワークシート上のすべての Shape オブジェクトをまとめて返します。

showDataTypeIcons

ワークシートにデータ型アイコンを表示するかどうかを指定します。 既定では、データ型アイコンが表示されます。

showGridlines

グリッド線をユーザーに表示するかどうかを指定します。

showHeadings

見出しをユーザーに表示するかどうかを指定します。

slicers

ワークシートの一部であるスライサーのコレクションを返します。

standardHeight

ワークシート内のすべての行の標準 (既定) の高さ (ポイント数) を返します。

standardWidth

ワークシートのすべての列の標準 (既定) 幅を指定します。 列幅の単位は、標準スタイルの 1 文字分の幅に相当します。 プロポーショナル フォントでは、数字の 0 の幅が列幅の単位になります。

tabColor

ワークシートのタブの色。 タブ カラーを取得するときに、ワークシートが表示されない場合、値は nullになります。 ワークシートが表示されていてもタブの色が自動に設定されている場合は、空の文字列が返されます。 それ以外の場合は、プロパティは色 (#RRGGBB の形式 (例: "FFA500") に設定されます。 色を設定するときは、空の文字列を使用して "自動" 色を設定します。それ以外の場合は実際の色を設定します。

tabId

Open Office XML で読み取り可能な、このワークシートを表す値を返します。 これは整数値で、 worksheet.id (グローバル一意識別子を返す) や worksheet.name ("Sheet1" などの値を返す) とは異なります。

tables

ワークシートの一部になっているグラフのコレクション。

tasks

ワークシートに存在するタスクのコレクションを返します。

verticalPageBreaks

ワークシートの垂直改ページをまとめて取得します。 このコレクションには、手動の改ページのみが含まれます。

visibility

ワークシートの可視性。

メソッド

activate()

Excel UI でワークシートをアクティブにします。

calculate(markAllDirty)

ワークシート上のすべてのセルを計算します。

checkSpelling(options)

このワークシート内の単語のスペルをチェックします。 この方法では、Excel UI で [スペルチェック] ダイアログ ボックスが開きます。

clearArrows()

ワークシートからトレース矢印を削除します。

copy(positionType, relativeTo)

ワークシートをコピーし、指定した位置に配置します。

copy(positionType, relativeTo)

ワークシートをコピーし、指定した位置に配置します。

delete()

ブックからワークシートを削除します。 ワークシートの表示設定が "VeryHidden" に設定されている場合、削除操作は InvalidOperation 例外で失敗することに注意してください。 削除する前に、まず可視性を非表示または表示に変更する必要があります。

evaluate(name)

数式文字列の評価結果を返します。 数式の入力のみがサポートされています。 数式名が無効な場合は、 InvalidArgument エラーがスローされます。

findAll(text, criteria)

指定された抽出条件に基づいて指定した文字列を検索し、1 つ以上の四角形の範囲からなる RangeAreas オブジェクトとして返します。 非表示のワークシート内のコンテンツは返されません。

findAllOrNullObject(text, criteria)

指定された抽出条件に基づいて指定した文字列を検索し、1 つ以上の四角形の範囲からなる RangeAreas オブジェクトとして返します。 非表示のワークシート内のコンテンツは返されません。

getCell(row, column)

行番号と列番号に基づいて、1 つのセルを含む Range オブジェクトを取得します。 ワークシート グリッド内にある限り、セルは親範囲の境界外に置かれてかまいません。

getNext(visibleOnly)

このワークシートの後に続くワークシートを取得します。 このワークシートの後にワークシートがない場合、このメソッドはエラーをスローします。

getNextOrNullObject(visibleOnly)

このワークシートの後に続くワークシートを取得します。 このワークシートの後にワークシートがない場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

getPrevious(visibleOnly)

このワークシートの前にあるワークシートを取得します。 以前のワークシートがない場合、このメソッドはエラーをスローします。

getPreviousOrNullObject(visibleOnly)

このワークシートの前にあるワークシートを取得します。 以前のワークシートがない場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

getRange(address)

アドレスまたは名前で指定された、セルの単一の長方形ブロックを表す Range オブジェクトを取得します。

getRangeByIndexes(startRow, startColumn, rowCount, columnCount)

特定の行インデックスと列インデックスから始まり、特定の行と列数にまたがる Range オブジェクトを取得します。

getRanges(address)

アドレスまたは名前で指定された四角形範囲の 1 つ以上のブロックを表す RangeAreas オブジェクトを取得します。

getUsedRange(valuesOnly)

使用範囲とは、値または書式設定が割り当たっているすべてのセルを包含する最小の範囲です。 ワークシート全体が空白の場合、この関数は左上のセルを返します (つまり、エラーはスロー されません )。

getUsedRangeOrNullObject(valuesOnly)

使用範囲とは、値または書式設定が割り当たっているすべてのセルを包含する最小の範囲です。 ワークシート全体が空白の場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

load(options)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(propertyNames)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(propertyNamesAndPaths)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

replaceAll(text, replacement, criteria)

現在のワークシート内で、指定された条件に基づき、指定された文字列を検索し、置換します。

set(properties, options)

オブジェクトの複数のプロパティを同時に設定します。 適切なプロパティを持つプレーン オブジェクト、または同じ型の別の API オブジェクトを渡すことができます。

set(properties)

既存の読み込まれたオブジェクトに基づいて、オブジェクトに複数のプロパティを同時に設定します。

showOutlineLevels(rowLevels, columnLevels)

行または列のグループをアウトライン レベルで表示します。 アウトライン、グループ、およびワークシート内のデータのリストを要約します。 rowLevels パラメーターと columnLevels パラメーターは、表示するアウトラインのレベル数を指定します。 許容される引数の範囲は 0 から 8 です。 値が 0 の場合、現在の表示は変更されません。 現在のレベル数より大きい値を指定すると、すべてのレベルが表示されます。

toJSON()

API オブジェクトが JSON.stringify() に渡されるときに、より有用な出力を提供するために、JavaScript toJSON() メソッドをオーバーライドします。 (次に、JSON.stringify渡されたオブジェクトの toJSON メソッドを呼び出します)。元の Excel.Worksheet オブジェクトが API オブジェクトであるのに対し、 toJSON メソッドは、元のオブジェクトから読み込まれた子プロパティの浅いコピーを含むプレーンな JavaScript オブジェクト ( Excel.Interfaces.WorksheetData と型指定) を返します。

イベント

onActivated

ワークシートがアクティブ化されたときに発生します。

onCalculated

ワークシートの計算時に発生します。

onCalculationBusy

ワークシート内のセルが非同期的に計算されるときに発生します。

このイベントは、 onCalculated イベントと同様に、計算サイクルの終了時にトリガーされます。 通常、セルの計算が完了すると、 onCalculated イベントがトリガーされます。 ただし、計算によって一時的な保留中の値 ("#BUSY!") がセルに配置された場合は、代わりに onCalculationBusy がトリガーされ、最終的な値の計算はまだ完了していませんが、セルの状態が変更されたことを示します。 後続の計算サイクルがそのセルの計算を完了すると、 onCalculated イベントがトリガーされます。

JavaScript User-Defined Functions や =PY 数式などの数式機能が、このイベントをトリガーすることがあります。

onChanged

特定のワークシート内のデータが変更されたときに発生します。

onColumnSorted

1 つ以上の列を並べ替えたときに発生します。 これは、左から右への並べ替え操作の結果として発生します。

onDeactivated

ワークシートが非アクティブ化されると発生します。

onFiltered

特定のワークシートにフィルターが適用されている場合に発生します。

onFormatChanged

フォーマットが特定のワークシートで変更されたときに発生します。

onFormulaChanged

このワークシートで 1 つ以上の数式が変更されたときに発生します。 このイベントは、数式の計算の結果のデータ値ではなく、数式自体が変更されたときに発生します。

このイベントは、セルに既に数式が含まれている場合にのみトリガーされます。 新しいセル値に数式を含めることはできません。 このイベントは、数式が含まれていなかったセルに数式が入力されたときにはトリガーされません。

onNameChanged

ワークシート名が変更されたときに発生します。

onProtectionChanged

ワークシートの保護状態が変更されたときに発生します。

onRowHiddenChanged

特定のワークシートで 1 つ以上の行の非表示状態が変更されたときに発生します。

onRowSorted

1 つ以上の行を並べ替えたときに発生します。 これは、上から下に並べ替えを実行したときに発生します。

onSelectionChanged

特定のワークシートで選択範囲が変更されたときに発生します。

onSingleClicked

ワークシート内で左クリック/タップ操作が行われたときに発生します。 以下の場合、クリックすると、このイベントは発生しません。

  • ユーザーがマウスをドラッグして複数選択する場合。

  • 数式参照のセル引数が選択されている場合、ユーザーはモードのセルを選択します。

onVisibilityChanged

ワークシートの表示が変更されたときに発生します。

プロパティの詳細

autoFilter

ワークシートの AutoFilter オブジェクトを表します。

readonly autoFilter: Excel.AutoFilter;

プロパティ値

注釈

API セット: ExcelApi 1.9

// 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;

プロパティ値

注釈

API セット: ExcelApi 1.1

comments

ワークシート上のすべての Comments オブジェクトの集まりを返します。

readonly comments: Excel.CommentCollection;

プロパティ値

注釈

API セット: ExcelApi 1.10

context

オブジェクトに関連付けられている要求コンテキスト。 これにより、アドインのプロセスが Office ホスト アプリケーションのプロセスに接続されます。

context: RequestContext;

プロパティ値

customProperties

ワークシート レベルのカスタム プロパティのコレクションを取得します。

readonly customProperties: Excel.WorksheetCustomPropertyCollection;

プロパティ値

注釈

API セット: ExcelApi 1.12

// 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

必要に応じてワークシートを再計算するかどうかを決定します。 必要に応じてワークシートを再計算する場合は true。 Excel がシートを再計算しない場合は false。

enableCalculation: boolean;

プロパティ値

boolean

注釈

API セット: ExcelApi 1.9

freezePanes

ワークシート上のフリーズしたウィンドウの操作に使用できるオブジェクトを取得します。

readonly freezePanes: Excel.WorksheetFreezePanes;

プロパティ値

注釈

API セット: ExcelApi 1.7

horizontalPageBreaks

ワークシートの水平改ページをまとめて取得します。 このコレクションには、手動の改ページのみが含まれます。

readonly horizontalPageBreaks: Excel.PageBreakCollection;

プロパティ値

注釈

API セット: ExcelApi 1.9

id

指定されたブックのワークシートを一意に識別する値を返します。 この識別子の値は、ワークシートの名前を変更したり移動したりしても同じままです。

readonly id: string;

プロパティ値

string

注釈

API セット: ExcelApi 1.1

name

ワークシートの表示名。 名前は 32 文字未満にする必要があります。

name: string;

プロパティ値

string

注釈

API セット: ExcelApi 1.1

namedSheetViews

ワークシートに存在するシート ビューのコレクションを返します。

readonly namedSheetViews: Excel.NamedSheetViewCollection;

プロパティ値

注釈

API セット: ExcelApiOnline 1.1

names

現在のワークシートにスコープされている名前のコレクション。

readonly names: Excel.NamedItemCollection;

プロパティ値

注釈

API セット: ExcelApi 1.4

notes

ワークシート内のすべてのノート オブジェクトのコレクションを返します。

readonly notes: Excel.NoteCollection;

プロパティ値

注釈

API セット: ExcelApi 1.18

pageLayout

ワークシートの PageLayout オブジェクトを取得します。

readonly pageLayout: Excel.PageLayout;

プロパティ値

注釈

API セット: ExcelApi 1.9

pivotTables

ワークシートの一部になっているピボットテーブルのコレクション。

readonly pivotTables: Excel.PivotTableCollection;

プロパティ値

注釈

API セット: ExcelApi 1.3

// 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

0 を起点とした、ブック内のワークシートの位置。

position: number;

プロパティ値

number

注釈

API セット: ExcelApi 1.1

// 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;

プロパティ値

注釈

API セット: ExcelApi 1.2

// 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;

プロパティ値

注釈

API セット: ExcelApi 1.9

showDataTypeIcons

ワークシートにデータ型アイコンを表示するかどうかを指定します。 既定では、データ型アイコンが表示されます。

showDataTypeIcons: boolean;

プロパティ値

boolean

注釈

API セット: ExcelApi 1.19

showGridlines

グリッド線をユーザーに表示するかどうかを指定します。

showGridlines: boolean;

プロパティ値

boolean

注釈

API セット: ExcelApi 1.8

// 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

注釈

API セット: ExcelApi 1.8

slicers

ワークシートの一部であるスライサーのコレクションを返します。

readonly slicers: Excel.SlicerCollection;

プロパティ値

注釈

API セット: ExcelApi 1.10

// 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

注釈

API セット: ExcelApi 1.7

standardWidth

ワークシートのすべての列の標準 (既定) 幅を指定します。 列幅の単位は、標準スタイルの 1 文字分の幅に相当します。 プロポーショナル フォントでは、数字の 0 の幅が列幅の単位になります。

standardWidth: number;

プロパティ値

number

注釈

API セット: ExcelApi 1.7

tabColor

ワークシートのタブの色。 タブ カラーを取得するときに、ワークシートが表示されない場合、値は nullになります。 ワークシートが表示されていてもタブの色が自動に設定されている場合は、空の文字列が返されます。 それ以外の場合は、プロパティは色 (#RRGGBB の形式 (例: "FFA500") に設定されます。 色を設定するときは、空の文字列を使用して "自動" 色を設定します。それ以外の場合は実際の色を設定します。

tabColor: string;

プロパティ値

string

注釈

API セット: ExcelApi 1.7

// 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 ("Sheet1" などの値を返す) とは異なります。

readonly tabId: number;

プロパティ値

number

注釈

API セット: ExcelApi 1.14

tables

ワークシートの一部になっているグラフのコレクション。

readonly tables: Excel.TableCollection;

プロパティ値

注釈

API セット: ExcelApi 1.1

tasks

注意

この API は開発者向けにプレビューとして提供されており、寄せられたフィードバックにもとづいて変更される場合があります。 この API は運用環境で使用しないでください。

ワークシートに存在するタスクのコレクションを返します。

readonly tasks: Excel.DocumentTaskCollection;

プロパティ値

注釈

API セット: ExcelApi ベータ版 (プレビューのみ)

verticalPageBreaks

ワークシートの垂直改ページをまとめて取得します。 このコレクションには、手動の改ページのみが含まれます。

readonly verticalPageBreaks: Excel.PageBreakCollection;

プロパティ値

注釈

API セット: ExcelApi 1.9

visibility

ワークシートの可視性。

visibility: Excel.SheetVisibility | "Visible" | "Hidden" | "VeryHidden";

プロパティ値

Excel.SheetVisibility | "Visible" | "Hidden" | "VeryHidden"

注釈

API セット: 可視性を読み取るための ExcelApi 1.1。1.2 設定用。

メソッドの詳細

activate()

Excel UI でワークシートをアクティブにします。

activate(): void;

返品

void

注釈

API セット: ExcelApi 1.1

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

確かに、すべてをダーティとしてマークします。

返品

void

注釈

API セット: ExcelApi 1.6

checkSpelling(options)

このワークシート内の単語のスペルをチェックします。 この方法では、Excel UI で [スペルチェック] ダイアログ ボックスが開きます。

checkSpelling(options?: Excel.CheckSpellingOptions): void;

パラメーター

options
Excel.CheckSpellingOptions

省略可能。 スペル チェックのオプション。

返品

void

注釈

API セット: ExcelApiDesktop 1.1

clearArrows()

ワークシートからトレース矢印を削除します。

clearArrows(): void;

返品

void

注釈

API セット: ExcelApiDesktop 1.1

copy(positionType, relativeTo)

ワークシートをコピーし、指定した位置に配置します。

copy(positionType?: Excel.WorksheetPositionType, relativeTo?: Excel.Worksheet): Excel.Worksheet;

パラメーター

positionType
Excel.WorksheetPositionType

ブック内で新しく作成したワークシートを配置する場所。 既定値は "None" で、ワークシートの先頭にワークシートが挿入されます。

relativeTo
Excel.Worksheet

新しく作成されたワークシートの位置を決定する既存のワークシート。 これは、 positionType が "Before" または "After" である場合にのみ必要です。

返品

新しく作成されたワークシート。

注釈

API セット: ExcelApi 1.7

// 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(positionType, relativeTo)

ワークシートをコピーし、指定した位置に配置します。

copy(positionType?: "None" | "Before" | "After" | "Beginning" | "End", relativeTo?: Excel.Worksheet): Excel.Worksheet;

パラメーター

positionType

"None" | "Before" | "After" | "Beginning" | "End"

ブック内で新しく作成したワークシートを配置する場所。 既定値は "None" で、ワークシートの先頭にワークシートが挿入されます。

relativeTo
Excel.Worksheet

新しく作成されたワークシートの位置を決定する既存のワークシート。 これは、 positionType が "Before" または "After" である場合にのみ必要です。

返品

新しく作成されたワークシート。

注釈

API セット: ExcelApi 1.7

delete()

ブックからワークシートを削除します。 ワークシートの表示設定が "VeryHidden" に設定されている場合、削除操作は InvalidOperation 例外で失敗することに注意してください。 削除する前に、まず可視性を非表示または表示に変更する必要があります。

delete(): void;

返品

void

注釈

API セット: ExcelApi 1.1

await Excel.run(async (context) => { 
    const wSheetName = 'Sheet1';
    const worksheet = context.workbook.worksheets.getItem(wSheetName);
    worksheet.delete();
    await context.sync(); 
});

evaluate(name)

数式文字列の評価結果を返します。 数式の入力のみがサポートされています。 数式名が無効な場合は、 InvalidArgument エラーがスローされます。

evaluate(name: string): OfficeExtension.ClientResult<any>;

パラメーター

name

string

実行する数式の名前。

返品

注釈

API セット: ExcelApiDesktop 1.1

findAll(text, criteria)

指定された抽出条件に基づいて指定した文字列を検索し、1 つ以上の四角形の範囲からなる RangeAreas オブジェクトとして返します。 非表示のワークシート内のコンテンツは返されません。

findAll(text: string, criteria: Excel.WorksheetSearchCriteria): Excel.RangeAreas;

パラメーター

text

string

検索する文字列。

criteria
Excel.WorksheetSearchCriteria

検索でセル全体に一致させる必要があるか、大文字と小文字を区別する必要があるかなど、追加の検索条件。

返品

検索条件に一致する 1 つ以上の四角形の範囲で構成される RangeAreas オブジェクト。 この条件を満たすセルがない場合は、 ItemNotFound エラーがスローされます。

注釈

API セット: ExcelApi 1.9

findAllOrNullObject(text, criteria)

指定された抽出条件に基づいて指定した文字列を検索し、1 つ以上の四角形の範囲からなる RangeAreas オブジェクトとして返します。 非表示のワークシート内のコンテンツは返されません。

findAllOrNullObject(text: string, criteria: Excel.WorksheetSearchCriteria): Excel.RangeAreas;

パラメーター

text

string

検索する文字列。

criteria
Excel.WorksheetSearchCriteria

検索でセル全体に一致させる必要があるか、大文字と小文字を区別する必要があるかなど、追加の検索条件。

返品

検索条件に一致する 1 つ以上の四角形の範囲で構成される RangeAreas オブジェクト。 一致するものがない場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

注釈

API セット: ExcelApi 1.9

// 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)

行番号と列番号に基づいて、1 つのセルを含む Range オブジェクトを取得します。 ワークシート グリッド内にある限り、セルは親範囲の境界外に置かれてかまいません。

getCell(row: number, column: number): Excel.Range;

パラメーター

row

number

取得するセルの行番号。 0 を起点とする番号になります。

column

number

取得するセルの列番号。 0 を起点とする番号になります。

返品

注釈

API セット: ExcelApi 1.1

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 の場合、表示されているワークシートのみを考慮し、非表示のワークシートはスキップします。

返品

注釈

API セット: ExcelApi 1.5

// 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 の場合、表示されているワークシートのみを考慮し、非表示のワークシートはスキップします。

返品

注釈

API セット: ExcelApi 1.5

getPrevious(visibleOnly)

このワークシートの前にあるワークシートを取得します。 以前のワークシートがない場合、このメソッドはエラーをスローします。

getPrevious(visibleOnly?: boolean): Excel.Worksheet;

パラメーター

visibleOnly

boolean

省略可能。 true の場合、表示されているワークシートのみを考慮し、非表示のワークシートはスキップします。

返品

注釈

API セット: ExcelApi 1.5

// 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 の場合、表示されているワークシートのみを考慮し、非表示のワークシートはスキップします。

返品

注釈

API セット: ExcelApi 1.5

getRange(address)

アドレスまたは名前で指定された、セルの単一の長方形ブロックを表す Range オブジェクトを取得します。

getRange(address?: string): Excel.Range;

パラメーター

address

string

省略可能。 範囲のアドレスまたは名前を表す文字列。 たとえば、"A1:B2" です。 指定されていない場合は、ワークシート全体の範囲が返されます。 addressには 8192 文字の制限があります。 アドレスが文字制限を超えている場合、このメソッドは InvalidArgument エラーを返します。

返品

注釈

API セット: ExcelApi 1.1

// 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

開始行 (インデックス 0)。

startColumn

number

開始列 (ゼロ インデックス)。

rowCount

number

範囲に含める行数。

columnCount

number

範囲に含める列の数。

返品

注釈

API セット: ExcelApi 1.7

getRanges(address)

アドレスまたは名前で指定された四角形範囲の 1 つ以上のブロックを表す RangeAreas オブジェクトを取得します。

getRanges(address?: string): Excel.RangeAreas;

パラメーター

address

string

省略可能。 コンマ区切りまたはセミコロン区切りのアドレス、または個々の範囲の名前を含む文字列。 たとえば、"A1:B2, A5:B5" や "A1:B2;A5:B5". 指定しない場合は、ワークシート全体の RangeAreas オブジェクトが返されます。

返品

注釈

API セット: ExcelApi 1.9

// 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]

返品

注釈

API セット: ExcelApi 1.1

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

省略可能。 値の入っているセルのみを使用セルと見なします。

返品

注釈

API セット: ExcelApi 1.4

load(options)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(options?: Excel.Interfaces.WorksheetLoadOptions): Excel.Worksheet;

パラメーター

options
Excel.Interfaces.WorksheetLoadOptions

読み込むオブジェクトのプロパティのオプションを指定します。

返品

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

追加の置換基準。

返品

実行された置換の数。

注釈

API セット: ExcelApi 1.9

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

注釈

API セット: ExcelApi 1.10

// 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()

API オブジェクトが JSON.stringify() に渡されるときに、より有用な出力を提供するために、JavaScript toJSON() メソッドをオーバーライドします。 (次に、JSON.stringify渡されたオブジェクトの toJSON メソッドを呼び出します)。元の Excel.Worksheet オブジェクトが API オブジェクトであるのに対し、 toJSON メソッドは、元のオブジェクトから読み込まれた子プロパティの浅いコピーを含むプレーンな JavaScript オブジェクト ( Excel.Interfaces.WorksheetData と型指定) を返します。

toJSON(): Excel.Interfaces.WorksheetData;

返品

イベントの詳細

onActivated

ワークシートがアクティブ化されたときに発生します。

readonly onActivated: OfficeExtension.EventHandlers<Excel.WorksheetActivatedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.7

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>;

イベントの種類

注釈

API セット: ExcelApi 1.8

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();
});

onCalculationBusy

注意

この API は開発者向けにプレビューとして提供されており、寄せられたフィードバックにもとづいて変更される場合があります。 この API は運用環境で使用しないでください。

ワークシート内のセルが非同期的に計算されるときに発生します。

このイベントは、 onCalculated イベントと同様に、計算サイクルの終了時にトリガーされます。 通常、セルの計算が完了すると、 onCalculated イベントがトリガーされます。 ただし、計算によって一時的な保留中の値 ("#BUSY!") がセルに配置された場合は、代わりに onCalculationBusy がトリガーされ、最終的な値の計算はまだ完了していませんが、セルの状態が変更されたことを示します。 後続の計算サイクルがそのセルの計算を完了すると、 onCalculated イベントがトリガーされます。

JavaScript User-Defined Functions や =PY 数式などの数式機能が、このイベントをトリガーすることがあります。

readonly onCalculationBusy: OfficeExtension.EventHandlers<Excel.WorksheetCalculationBusyEventArgs>;

イベントの種類

注釈

API セット: ExcelApi ベータ版 (プレビューのみ)

onChanged

特定のワークシート内のデータが変更されたときに発生します。

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

イベントの種類

注釈

API セット: ExcelApi 1.7

// 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

1 つ以上の列を並べ替えたときに発生します。 これは、左から右への並べ替え操作の結果として発生します。

readonly onColumnSorted: OfficeExtension.EventHandlers<Excel.WorksheetColumnSortedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.10

// 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>;

イベントの種類

注釈

API セット: ExcelApi 1.7

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();
});

onFiltered

注意

この API は開発者向けにプレビューとして提供されており、寄せられたフィードバックにもとづいて変更される場合があります。 この API は運用環境で使用しないでください。

特定のワークシートにフィルターが適用されている場合に発生します。

readonly onFiltered: OfficeExtension.EventHandlers<Excel.WorksheetFilteredEventArgs>;

イベントの種類

注釈

API セット: ExcelApi ベータ版 (プレビューのみ)

onFormatChanged

フォーマットが特定のワークシートで変更されたときに発生します。

readonly onFormatChanged: OfficeExtension.EventHandlers<Excel.WorksheetFormatChangedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.9

onFormulaChanged

このワークシートで 1 つ以上の数式が変更されたときに発生します。 このイベントは、数式の計算の結果のデータ値ではなく、数式自体が変更されたときに発生します。

このイベントは、セルに既に数式が含まれている場合にのみトリガーされます。 新しいセル値に数式を含めることはできません。 このイベントは、数式が含まれていなかったセルに数式が入力されたときにはトリガーされません。

readonly onFormulaChanged: OfficeExtension.EventHandlers<Excel.WorksheetFormulaChangedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.13

// 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}.`
    );
  });
}

onNameChanged

ワークシート名が変更されたときに発生します。

readonly onNameChanged: OfficeExtension.EventHandlers<Excel.WorksheetNameChangedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.17

onProtectionChanged

ワークシートの保護状態が変更されたときに発生します。

readonly onProtectionChanged: OfficeExtension.EventHandlers<Excel.WorksheetProtectionChangedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.14

// 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

特定のワークシートで 1 つ以上の行の非表示状態が変更されたときに発生します。

readonly onRowHiddenChanged: OfficeExtension.EventHandlers<Excel.WorksheetRowHiddenChangedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.11

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

1 つ以上の行を並べ替えたときに発生します。 これは、上から下に並べ替えを実行したときに発生します。

readonly onRowSorted: OfficeExtension.EventHandlers<Excel.WorksheetRowSortedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.10

// 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>;

イベントの種類

注釈

API セット: ExcelApi 1.7

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>;

イベントの種類

注釈

API セット: ExcelApi 1.10

// 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();
});

onVisibilityChanged

ワークシートの表示が変更されたときに発生します。

readonly onVisibilityChanged: OfficeExtension.EventHandlers<Excel.WorksheetVisibilityChangedEventArgs>;

イベントの種類

注釈

API セット: ExcelApi 1.17