2015-11-03 161 views
0

我想创建一个脚本来清除所有工作表上的固定单元格,但是前四个单元格并使用工作表名称填充完全相同的单元格。清除单元格并获取Google工作表名称

到目前为止,我有一个脚本来清空单元格,并用一个新函数填充它以获取表单名称。第一个脚本在打开电子表格时触发。但是,它只是说加载...并且不提取表名。

我现在的(非工作脚本):

function sheetName() { 
    return SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getName(); 
} 


function clearRange() { 
SpreadsheetApp.getActive().getSheets() 
    .map(function (s, i) { 
     if (i > 3) s.getRange('B3').clearContent().setFormula('=sheetName()'); 
    }) 
} 

任何伟大的想法? 感谢

回答

0

而不是写一个自定义函数到单元格,为什么不写表单名称本身?是这样的...

function clearRange() { 
SpreadsheetApp.getActive().getSheets() 
.map(function (s, i) { 
    if (i > 3) s.getRange('B3').clearContent().setValue(s.getName()); 
    }) 
} 

如果需要的话,可以触发这个函数运行的OnOpen ..

注:我想你甚至可以离开了.clearContent()部分的内容将被覆盖任何怎么样。

+0

谢谢!它很棒! – frenne

0

相同的方法,但一点点修改

function clearRange(n, range) { 
    var ss = SpreadsheetApp.getActiveSpreadsheet(); 
    var sheets = ss.getSheets(); 
    sheets.map(function(sheet,index){ 
    if (index > n) sheet.getRange(range).clearContent(); 
    }); 
} 

// call the function 
function run(){ 
    clearRange(3, 'B3') 
} 

你可以传递一个参数n和范围,而不是硬编码3,倘若你想使用的功能与其他参数

“B3”
+0

超级,谢谢! – frenne

相关问题