Google Apps Script 多列自动填充重复代码如何通过2个变量精简
Google Apps Script 多列自动填充代码精简方案
可以仅通过2个变量完成代码精简,同时还能修复原宏录制代码的潜在问题。
原代码存在的问题
- 逐列调用
autoFill重复冗余,共10行逻辑完全一致的重复代码 - 填充范围混用
ss.getRange,当当前活动工作表不是Liste时会出现范围匹配错误 - 填充范围为
X3:X2(起始行号大于结束行号),是向上填充效果,若需要向下填充可自行修改目标范围的结束行号即可。
精简后代码(仅2个变量)
function autofill() { // 变量1:固定取Liste工作表,避免活动表变动导致的错误 const ssListe = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Liste'); // 变量2:需要自动填充的源单元格范围(K到T列的第3行,共10列) const sourceRange = ssListe.getRange('K3:T3'); // 单语句完成所有列自动填充,无需逐列操作 sourceRange.autoFill(ssListe.getRange('K3:T2'), SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES); }
实现逻辑
Google Apps Script的autoFill原生支持多列批量操作,只要把连续的多列源单元格合并为一个Range对象,目标范围也对应设置为相同列数的连续范围,即可一次性完成所有列的填充,不需要逐列单独调用方法。
内容的提问来源于stack exchange,提问作者Maxime Pons
相关产品推荐
相关产品推荐

