Excel.TableCollection class

ブックまたはワークシートの一部として含まれる、すべてのテーブルのコレクションを、到達方法に応じて表します。

Extends

注釈

API セット: ExcelApi 1.1

使用元

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/42-range/range-cell-control.yaml

// Add checkboxes to the table.
await Excel.run(async (context) => {
  const sheet = context.workbook.worksheets.getActiveWorksheet();

  // Get the second column in the table, without the header.
  const range = sheet.tables.getItem("FruitTable").columns.getItem("Analysis").getDataBodyRange();

  // Change the boolean values to checkboxes.
  range.control = {
    type: Excel.CellControlType.checkbox
  };
  await context.sync();
});

プロパティ

context

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

count

ブックに含まれるテーブルの数を返します。

items

このコレクション内に読み込まれた子アイテムを取得します。

メソッド

add(address, hasHeaders)

新しいテーブルを作成します。 範囲オブジェクトまたはソース アドレスにより、テーブルが追加されるワークシートが判断されます。 テーブルが追加できない場合 (たとえば、アドレスが無効な場合や、テーブルが別のテーブルと重複している場合) は、エラーがスローされます。

getCount()

コレクションに含まれるテーブルの数を取得します。

getItem(key)

名前または ID でテーブルを取得します。

getItemAt(index)

コレクション内の位置に基づいてテーブルを取得します。

getItemOrNullObject(key)

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

load(options)

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

load(propertyNames)

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

load(propertyNamesAndPaths)

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

toJSON()

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

イベント

onAdded

ブックに新しいテーブルが追加されたときに発生します。

onChanged

ブック内の任意のテーブルまたはワークシートのデータが変更されたときに発生します。

onDeleted

指定されたテーブルがブックで削除されたときに発生します。

onFiltered

ブックまたはワークシート内の任意のテーブルにフィルターが適用されている場合に発生します。

プロパティの詳細

context

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

context: RequestContext;

プロパティ値

count

ブックに含まれるテーブルの数を返します。

readonly count: number;

プロパティ値

number

注釈

API セット: ExcelApi 1.1

items

このコレクション内に読み込まれた子アイテムを取得します。

readonly items: Excel.Table[];

プロパティ値

メソッドの詳細

add(address, hasHeaders)

新しいテーブルを作成します。 範囲オブジェクトまたはソース アドレスにより、テーブルが追加されるワークシートが判断されます。 テーブルが追加できない場合 (たとえば、アドレスが無効な場合や、テーブルが別のテーブルと重複している場合) は、エラーがスローされます。

add(address: Range | string, hasHeaders: boolean): Excel.Table;

パラメーター

address

Excel.Range | string

Range オブジェクト、またはデータ ソースを表す範囲の文字列アドレスまたは名前。 アドレスにシート名が含まれていない場合は、現在作業中のシートが使用されます。 [API セット: ExcelApi 1.1 / 1.3. ExcelApi 1.3 より前のバージョンでは、このパラメーターは文字列である必要があります。 Excel API 1.3 以降では、このパラメーターは Range オブジェクトまたは文字列の場合があります。]

hasHeaders

boolean

インポートするデータに列ラベルがあるかどうかを示すブール値。 ソースにヘッダーが含まれていない場合 (つまり、このプロパティが false に設定されている場合)、Excel は自動的にヘッダーを生成し、データを 1 行下にシフトします。

返品

注釈

API セット: ExcelApi 1.1

await Excel.run(async (context) => { 
    const table = context.workbook.tables.add('Sheet1!A1:E7', true);
    table.load('name');
    await context.sync();
    
    console.log(table.name);
});

getCount()

コレクションに含まれるテーブルの数を取得します。

getCount(): OfficeExtension.ClientResult<number>;

返品

注釈

API セット: ExcelApi 1.4

getItem(key)

名前または ID でテーブルを取得します。

getItem(key: string): Excel.Table;

パラメーター

key

string

取得するテーブルの名前または ID。

返品

注釈

API セット: ExcelApi 1.1

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/42-range/range-cell-control.yaml

// Remove checkboxes from the table.
await Excel.run(async (context) => {
  const sheet = context.workbook.worksheets.getActiveWorksheet();

  // Get the second column in the table, without the header.
  const range = sheet.tables.getItem("FruitTable").columns.getItem("Analysis").getDataBodyRange();

  // Change the checkboxes back to boolean values.
  range.control = {
    type: Excel.CellControlType.empty
  };
  await context.sync();
});

getItemAt(index)

コレクション内の位置に基づいてテーブルを取得します。

getItemAt(index: number): Excel.Table;

パラメーター

index

number

取得するオブジェクトのインデックス値。 0 を起点とする番号になります。

返品

注釈

API セット: ExcelApi 1.1

await Excel.run(async (context) => { 
    const table = context.workbook.tables.getItemAt(0);
    table.load('name');
    await context.sync();
    
    console.log(table.name);
});

getItemOrNullObject(key)

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

getItemOrNullObject(key: string): Excel.Table;

パラメーター

key

string

取得するテーブルの名前または ID。

返品

注釈

API セット: ExcelApi 1.4

load(options)

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

load(options?: Excel.Interfaces.TableCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.TableCollection;

パラメーター

options

Excel.Interfaces.TableCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions

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

返品

load(propertyNames)

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

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

パラメーター

propertyNames

string | string[]

読み込むプロパティを指定するコンマ区切りの文字列または文字列の配列。

返品

// Get the number of tables.
await Excel.run(async (context) => { 
    const tables = context.workbook.tables;
    tables.load('count');
    await context.sync();
    
    console.log(tables.count);
});

load(propertyNamesAndPaths)

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

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

パラメーター

propertyNamesAndPaths
OfficeExtension.LoadOption

propertyNamesAndPaths.select は読み込むプロパティを指定するコンマ区切りの文字列であり、 propertyNamesAndPaths.expand は読み込むナビゲーションのプロパティを指定するコンマ区切りの文字列です。

返品

toJSON()

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

toJSON(): Excel.Interfaces.TableCollectionData;

返品

イベントの詳細

onAdded

ブックに新しいテーブルが追加されたときに発生します。

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

イベントの種類

注釈

API セット: ExcelApi 1.9

onChanged

ブック内の任意のテーブルまたはワークシートのデータが変更されたときに発生します。

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

イベントの種類

注釈

API セット: ExcelApi 1.7

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

await Excel.run(async (context) => {
    let tables = context.workbook.tables;
    tables.onChanged.add(onChange);

    await context.sync();
    console.log("A handler has been registered for the table collection onChanged event");
});

onDeleted

指定されたテーブルがブックで削除されたときに発生します。

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

イベントの種類

注釈

API セット: ExcelApi 1.9

onFiltered

注意

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

ブックまたはワークシート内の任意のテーブルにフィルターが適用されている場合に発生します。

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

イベントの種類

注釈

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