Как заменить все формулы на значения, которые они рассчитали? - PullRequest
0 голосов
/ 27 августа 2018

Допустим, у меня есть лист с именем Sheet1 и лист с именем Sheet2

. На листе 2 у меня есть формулы, которые копируют значения с первого листа в виде:

='Sheet1'!A1
='Sheet1'!A2
='Sheet1'!A3

Не существует согласованного количества строк или столбцов, это может быть 5X10 или 20X50 строк / столбцов.

Затем я хочу создать сценарий, который будет принимать значение, вычисленное в каждой ячейке, изаменить формулу с этим значением.

1009 * цель состоит в том, чтобы сохранить значения, не создавая ссылочную ошибку, когда я потом удалить Лист1.Есть ли простой способ сделать это с помощью скрипта?

1 Ответ

0 голосов
/ 27 августа 2018

Используйте getDisplayValues() и setValues()

function destroyFormulas() {
  var rng = SpreadsheetApp
    .getActive()
    .getActiveSheet()
    .getRange("A1:B3"), //or getDataRange()
    values = rng.getDisplayValues(); //or getValues()
  rng.setValues(values);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...