Копирайте стойности от клетка и поставете стойностите в друга клетка в същия лист

Може ли Google Apps Script да копира стойностите от една клетка и да ги постави в друга клетка в същия лист и след това да повтори за всички листове? Опитвам се да създам скрипт, чрез който стойността в A1 за всеки лист се копира (само стойност) върху B1. Тази функция работи само в един лист:

    function CopyToRange() {
      var source = SpreadsheetApp.getActiveSpreadsheet();
      source.getRange('A1').copyTo(source.getRange('B1'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
    }

person Marcelo Meza    schedule 25.10.2020    source източник


Отговори (1)


Обяснение:

  • Първо, трябва да получите масив от всички листови обекти. Можете да постигнете това, като използвате getSheets().

  • След това трябва да повторите всеки лист и един от начините да направите това е да използвате forEach цикъл.


Решение:

function CopyToRange() {
      const source = SpreadsheetApp.getActiveSpreadsheet();
      const sheets = source.getSheets();
      sheets.forEach(sh=>{
      sh.getRange('A1').copyTo(sh.getRange('B1'), SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
      });
 }
person soMario    schedule 25.10.2020
comment
Това е чудесно. Благодаря ти, Мариос. Работеше безупречно. - person Marcelo Meza; 25.10.2020