在一个电子表格报表内,有多个Sheet页,有时候用户希望点击某个Sheet中的对应单元格,可以跳转到另一个Sheet 页。对于这样的需求通过电子表格的跳转规则向导生成宏代码,然后再手动调整即可。
实例效果如下:
将向导自动生成的宏代码:
var command = spreadsheetReport.command; command.close(); //@smartbi.openOtherPage:"I402881e4015a73137313d61e015a733a27a807b1" command.execute('OPENWITHNOREFRESH', 'I402881e4015a73137313d61e015a733a27a807b1'); var report = command.spreadsheetReport; if (paramsInfo.length > 0) report.setParamsInfo(paramsInfo); report.doRefresh(); |
替换为如下代码:
var report = spreadsheetReport; if (paramsInfo.length > 0) report.setParamsInfo(paramsInfo); report.doAjaxRefresh(); setTimeout(function() { report.changeSheet(1); }, 200); |
替换宏代码后若无法正常刷新数据,可以在report.changeSheet(1)代码后面加上report.doRefresh(true);这句代码尝试解决,另在页面设置中设置为切换参数不自动刷新(如下图) |