Я пытаюсь написать скрипт для замены ссылок некоторых формул на их текущее значение перед копированием в новый диапазон.
Я бы хотел сохранить оставшуюся часть формулы, чтобы я мог сохранитьистория значений без использования новых листов.
Я пробовал этот код, но в формулах не произошло никаких изменений:
function repformulas() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var formrange = sheet.getRange("h1:h6");
var formulas = formrange.getFormulas();
var reprange = sheet.getRange("c2:c6");
var pasterange = sheet.getRange("i1:i6");
var regexp = /(.{2})\s./g;
for (var i = 0; i < formulas.length; i++) {
for (var j = 0; j < formulas[0].length; j++) {
formulas[i][j] = formulas[i][j].replace(regexp, repvalue[i][j]);
}
}
sheet.insertColumns(9, 1);
pasterange.setFormulas(formulas);
}
У меня есть это в массиве формул:
["=eomonth(I1;1)"] ["=($C$2/3869,01-1)*100"] ["=($C$3/4625,68-1)*100"] ["=($C$4/8494.69-1)*100"] ["=($C$5/15056.32-1)*100"] ["=($C$6/23540,01-1)*100"]
И я хочу заменить это следующим:
["=eomonth(I1; 1)"] ["=(4001.02/3869.01-1)*100"] ["=(4805.08/4625.68-1)*100"] ["=(8399.84/8494.69-1)*100"] ["=(15057.98/15056.32-1)*100"] ["=(23554.56/23540.01-1)*100"]
Буду очень признателен, если кто-нибудь сможет мне помочь.