Excel.TableCollection class

表示属于工作簿或工作表(具有取决于限定到的范围)的所有表的集合。

Extends

注解

[ API 集:ExcelApi 1.1 ]

属性

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

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,反过来,调用toJSON传递给它的 对象的 方法。) 虽然原始Excel.TableCollection对象是 API 对象,toJSON但该方法返回一个纯 JavaScript 对象, (类型为 Excel.Interfaces.TableCollectionData) ,其中包含一个“items”数组,其中包含集合项中任何已加载属性的浅表副本。

事件

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 将自动生成一个标题,并将数据向下移动一行。

返回

注解

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

示例

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

getItemAt(index)

根据其在集合中的位置获取表。

getItemAt(index: number): Excel.Table;

参数

index

number

要检索的对象的索引值。 从零开始编制索引。

返回

注解

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

重写 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 JSON.stringify (,反过来,调用toJSON传递给它的 对象的 方法。) 虽然原始Excel.TableCollection对象是 API 对象,toJSON但该方法返回一个纯 JavaScript 对象, (类型为 Excel.Interfaces.TableCollectionData) ,其中包含一个“items”数组,其中包含集合项中任何已加载属性的浅表副本。

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 BETA (仅预览版) ]