众所周知,在SpreadJS中有一个功能,可以将表格转换为区域:
这个操作可以直接将表格中的所有单元格转换为普通的单元格,在实际情况中也有着广泛的应用,那么这样的操作应该如何通过代码来实现呢?
通过查阅Table类的API文档,同学们会发现并没有找到相关的接口,看来并没有直接的接口可以实现这个需求。
但是,在设计器的Command中,可以找到一个TableToRange指令。
参考:https://demo.grapecity.com.cn/sp ... dNames#tabletorange
大家可以执行这个指令来实现转换表格为区域的操作:
- spread.commandManager().execute({
- cmd: "tableToRange",
- sheetName: sheet.name(),
- tableName: sheet.tables.all()[0].name()
- });
复制代码
另外,大家也可以通过拷贝的方式来实现:
- var spread = GC.Spread.Sheets.findControl("ss");
- var sheet = spread.getActiveSheet();
- var table = sheet.tables.findByName("Table1");
- var fromRange = table.range();
- sheet.suspendPaint();
- sheet.copyTo(fromRange.row, fromRange.col,
- fromRange.row + 12, fromRange.col,
- 1, fromRange.colCount,
- GC.Spread.Sheets.CopyToOptions.all);
- sheet.copyTo(fromRange.row + 1, fromRange.col,
- fromRange.row + 13, fromRange.col,
- fromRange.rowCount - 1, fromRange.colCount,
- GC.Spread.Sheets.CopyToOptions.all);
- sheet.deleteRows(1, 12);
- sheet.resumePaint();
复制代码
大家可以结合自己的实际需求选用合适的方式。
参考:https://gcdn.grapecity.com.cn/showtopic-55827-1-1.html
|
|