Excel.TableRowCollection class
表示属于表的所有行的集合。
请注意,与区域或列不同, TableRow 对象表示表行的物理位置,而不是数据。 也就是说,如果对数据进行排序或添加了新行,表行将继续指向为其创建它的索引。
方法
| add(index, values, always |
向表中添加一行或多行。 返回对象是新添加的首行。 请注意,与区域或列不同, |
| add |
向表中添加一行或多行。 返回的对象将是新添加的行的首行。 不同于 请注意,与区域或列不同, |
| delete |
删除表中的多行。 这些行不需要是连续的。 如果所选行已被删除或不存在,则此方法将引发错误 |
| delete |
从表中删除指定数量的行,从给定索引开始。 如果调用此方法的表应用了筛选器,则此方法将引发 |
| get |
获取表格中的行数。 |
| get |
根据其在集合中的位置获取行。 请注意,与区域或列不同, |
| load(options) | 将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 |
| load(property |
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 |
| load(property |
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 |
| toJSON() | 覆盖 JavaScript |
属性详细信息
context
count
items
方法详细信息
add(index, values, alwaysInsert)
向表中添加一行或多行。 返回对象是新添加的首行。
请注意,与区域或列不同, TableRow 对象表示表行的物理位置,而不是数据。 也就是说,如果对数据进行排序或添加了新行,表行将继续指向为其创建它的索引。
add(index?: number, values?: Array<Array<boolean | string | number>> | boolean | string | number, alwaysInsert?: boolean): Excel.TableRow;
参数
- index
-
number
可选。 指定新行的相对位置。 如果为 NULL 或 -1,将在末尾进行添加。 插入的行下方的所有行都会向下移动。 从零开始编制索引。
- values
-
Array<Array<boolean | string | number>> | boolean | string | number
可选。 表行的未格式化值的 2D 数组。
- alwaysInsert
-
boolean
可选。 指定添加新行时是否将新行插入到表中。 如果 true,则新行将插入到表中。 如果 false,新行将添加到表下方。 默认值为 true。
返回
注解
API 集:ExcelApi 1.1 用于添加单行;1.4 允许添加多行;1.15 用于添加 alwaysInsert 参数。
示例
await Excel.run(async (context) => {
const tables = context.workbook.tables;
const values = [["Sample", "Values", "For", "New", "Row"]];
const row = tables.getItem("Table1").rows.add(null, values);
row.load('index');
await context.sync();
console.log(row.index);
});
addAsJson(index, values, alwaysInsert)
向表中添加一行或多行。 返回的对象将是新添加的行的首行。 不同于 add(), addAsJson() 采用任何类型的单元格值,例如图像或实体数据类型。
请注意,与区域或列不同, TableRow 对象表示表行的物理位置,而不是数据。 也就是说,如果对数据进行排序或添加了新行,表行将继续指向为其创建它的索引。
addAsJson(index?: number, values?: CellValue[][], alwaysInsert?: boolean): Excel.TableRow;
参数
- index
-
number
可选。 指定新行的相对位置。 如果为 NULL 或 -1,将在末尾进行添加。 插入的行下方的所有行都会向下移动。 从零开始编制索引。
- values
-
Excel.CellValue[][]
可选。 表行的单元格值的 2D 数组。
- alwaysInsert
-
boolean
可选。 指定添加新行时是否将新行插入到表中。 如果 true,则新行将插入到表中。 如果 false,新行将添加到表下方。 默认值为 true。
返回
注解
deleteRows(rows)
删除表中的多行。 这些行不需要是连续的。 如果所选行已被删除或不存在,则此方法将引发错误 InvalidArgument 。 如果调用此方法的表应用了筛选器,则此方法将引发 InsertDeleteConflict 错误。
deleteRows(rows: number[] | TableRow[]): void;
参数
- rows
-
number[] | Excel.TableRow[]
要从表中删除的行索引号或行对象的数组。
返回
void
注解
deleteRowsAt(index, count)
从表中删除指定数量的行,从给定索引开始。 如果调用此方法的表应用了筛选器,则此方法将引发 InsertDeleteConflict 错误。
deleteRowsAt(index: number, count?: number): void;
参数
- index
-
number
要删除的行的索引值。 注: 每次删除表中的前一行时,在每次删除操作后,行索引都会更新。 确保在确定值的时间和运行操作的时间之间,要删除的行的索引没有变化。
- count
-
number
要删除的行数。 默认情况下,将删除单行。
返回
void
注解
getCount()
获取表格中的行数。
getCount(): OfficeExtension.ClientResult<number>;
返回
OfficeExtension.ClientResult<number>
注解
getItemAt(index)
根据其在集合中的位置获取行。
请注意,与区域或列不同, TableRow 对象表示表行的物理位置,而不是数据。 也就是说,如果对数据进行排序或添加了新行,表行将继续指向为其创建它的索引。
getItemAt(index: number): Excel.TableRow;
参数
- index
-
number
要检索的对象的索引值。 从零开始编制索引。
返回
注解
示例
await Excel.run(async (context) => {
const tablerow = context.workbook.tables.getItem('Table1').rows.getItemAt(0);
tablerow.load('values');
await context.sync();
console.log(tablerow.values);
});
load(options)
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()。
load(options?: Excel.Interfaces.TableRowCollectionLoadOptions & Excel.Interfaces.CollectionLoadOptions): Excel.TableRowCollection;
参数
为要加载的对象属性提供选项。
返回
load(propertyNames)
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()。
load(propertyNames?: string | string[]): Excel.TableRowCollection;
参数
- propertyNames
-
string | string[]
指定要加载的属性的逗号分隔的字符串或字符串数组。
返回
示例
await Excel.run(async (context) => {
const tablerows = context.workbook.tables.getItem('Table1').rows;
tablerows.load('items');
await context.sync();
console.log("tablerows Count: " + tablerows.count);
for (let i = 0; i < tablerows.items.length; i++) {
console.log(tablerows.items[i].index);
}
});
load(propertyNamesAndPaths)
将命令加入队列以加载对象的指定属性。 阅读属性前必须先调用 context.sync()。
load(propertyNamesAndPaths?: OfficeExtension.LoadOption): Excel.TableRowCollection;
参数
- propertyNamesAndPaths
- OfficeExtension.LoadOption
propertyNamesAndPaths.select 是指定要加载的属性的逗号分隔字符串,以及 propertyNamesAndPaths.expand 指定要加载的导航属性的逗号分隔字符串。
返回
toJSON()
覆盖 JavaScript toJSON() 方法,以便在将 API 对象传递给 JSON.stringify()时提供更有用的输出。 (JSON.stringify反过来调用 toJSON 传递给它的对象的方法。) 虽然原始 Excel.TableRowCollection 对象是 API 对象,但该 toJSON 方法返回一个纯 JavaScript 对象, (类型为 Excel.Interfaces.TableRowCollectionData) ,其中包含一个“items”数组,其中包含从集合的 items 中加载的任何属性的浅层副本。
toJSON(): Excel.Interfaces.TableRowCollectionData;