Есть ли способ добавить количество записей в имя TAB листа Google - PullRequest
0 голосов
/ 21 июня 2020

Мне нравится добавлять количество записей для каждого листа к имени вкладки в листе Google.

В листе Google есть несколько вкладок. (например, Sales, Inventory, et c.)

Мне нравится, когда имена вкладок динамически показывают количество записей в имени вкладки

Пример: имена вкладок (Sales-10, Inventory-100)

Я искал и не могу найти ссылку на то, как это можно сделать.

Спасибо

Ответы [ 2 ]

0 голосов
/ 21 июня 2020

Считайте счет в A1 или в любом другом месте. Не используйте тире на листах, в которых не требуется счет.

function addCounts() {
  const ss=SpreadsheetApp.getActive();
  const shts=ss.getSheets();
  shts.forEach(function(sh,i){
    let idx=sh.getName().lastIndexOf('-');
    if(idx!=-1) {
      sh.setName(sh.getName().slice(0,idx+1) + String(sh.getRange('A1').getValue()));
    }
  });
}
0 голосов
/ 21 июня 2020

Попробуйте сценарий ниже:

Предполагая, что у вас есть значения счетчика в A1 на обоих листах, если нет, измените свой диапазон соответствующим образом в getRange(1,1)

function appendName() {
       
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheets = ss.getSheets();
  
  for (var i=0;i<sheets.length;i++){
      var oldName = sheets[i].getName();
      var getcountName = sheets[i].getRange(1,1).getValue();
      var re = /\W\d+/ ;
      var oldNameReset = oldName.replace(re , '') ;
      var setNewName = sheets[i].setName(oldNameReset + "-" + getcountName);
    }    
   
}

Установить триггер При изменении

...