我发现一个脚本可以很好地满足我的需求,但是我想进行更改以使其效果更好。我要更改的是用于在选项卡/工作表中选择单元格数组的行var hideSheetsContaining = "tw";
,因为这些值会定期更改并且更易于编辑。
function hideTW() {
// My clumsy edit!
var hideSheetsContaining = "tw";
// Original script
// var hideSheetsContaining = Browser.inputBox("Hide sheets with names containing:");
if (sheetMatch(hideSheetsContaining)){
for (var i = 0; i < sheetsCount; i++){
var sheet = sheets[i];
var sheetName = sheet.getName();
Logger.log(sheetName);
if (sheetName.indexOf(hideSheetsContaining.toString()) !== -1){
Logger.log("HIDE!");
sheet.hideSheet();
}
}
} else {
noMatchAlert();
}
}
如果我不能使用单元格数组,如何将其从单个字符串更改为几个不同的值?理想情况下,它们将是精确值,但是也可以使用“包含...”列表。
谢谢!
特雷
答案 0 :(得分:1)
我稍微修改了您的代码,并添加了一个数组来保存要搜索和删除的字符串。用字符串填充数组,然后尝试。
function hideTW() {
// My clumsy edit!
var hideSheetsContaining = ['str1', 'str2', 'str3']; // put strings to search here
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheets = ss.getSheets();
sheets.forEach(function(sheet) {
var sheetName = sheet.getName();
hideSheetsContaining.forEach(function(str) {
if (sheetName.indexOf(str) !== -1) {
Logger.log('HIDE-' + sheetName);
sheet.hideSheet();
}
});
});
}