...
注意:
1、该代码不能与点击任一单元格添加数据的宏(电子表格回写点击任一单元格插入整行)放在一起,需要分别创建2个宏,否则可能会出现数据无法正常删除的问题。)放在一起,需要分别创建2个宏,否则可能会出现数据无法正常删除的问题。
2、该代码实现的删除宏使用时,是通过单元格的右键菜单命令执行的。
...
- 在电子表格设计器(Microsoft Office Excel)中,创建 回写电子表格。
- 在浏览器的资源定制节点下,选中电子表格,右键选择 编辑宏 进入报表宏界面。
- 在报表宏界面新建客户端模块,在弹出的新建模块对话框中,选择对象为 spreadsheetReport、事件为onRenderReport,并把下面宏代码复制到代码编辑区域。
宏类型
宏类型 | 对象 | 事件 |
ClientSide | spreadsheetReport | onRenderReport |
代码块 | ||
---|---|---|
| ||
function main(spreadsheetReport) { //debugger; var spreadsheetReportWriteBack = spreadsheetReport.spreadsheetReportWriteBack; spreadsheetReportWriteBack.doInsertRowClick_old = spreadsheetReportWriteBack.doInsertRowClick; spreadsheetReportWriteBack.doInsertRowClick = function(e) { var currentEditingPosition = this.currentEditingPosition; var idx = currentEditingPosition.indexOf(':') + 1; this.currentEditingPosition = currentEditingPosition.substring(0, idx) + 1; //这个1是表示第二列的意思,从0开始计数 //若报表中第一个字段放置在C列,则应该+2,若第一个字段放置在D列,则应该+3 spreadsheetReportWriteBack.doInsertRowClick_old(e); } //debugger; spreadsheetReportWriteBack.doRemoveRowClick_old = spreadsheetReportWriteBack.doRemoveRowClick; spreadsheetReportWriteBack.doRemoveRowClick = function(e) { var currentEditingPosition = this.currentEditingPosition; var idx = currentEditingPosition.indexOf(':') + 1; this.currentEditingPosition = currentEditingPosition.substring(0, idx) + 1; //这个1是表示第二列的意思,从0开始计数 //若报表中第一个字段放置在C列,则应该+2,若第一个字段放置在D列,则应该+3 spreadsheetReportWriteBack.doRemoveRowClick_old(e); } } |
...