Оставьте ячейку без изменений, если условие не выполнено - PullRequest
0 голосов
/ 03 мая 2020

Мне нужна функция, которая позволит переписать то, что уже написано в ячейке. Я бы назвал это NothingHasChanged () и использовал бы этот способ:

В ячейке, выбранной случайным образом, я набрал бы:
if(A1="Yes"; "The cell A1 contained Yes at least once"; NothingHasChanged() )

Таким образом, я бы сохранял историю значения ячейки сверхурочно.

Я пытался сделать скрипт:

function FormulaToValueV2() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getCurrentCell().offset(599, 0).activate();
  spreadsheet.getCurrentCell().offset(-599, 0).copyTo(spreadsheet.getActiveRange(), 
SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
  spreadsheet.getCurrentCell().offset(-599, 0).activate();
  spreadsheet.getCurrentCell().offset(599, 0).copyTo(spreadsheet.getActiveRange(), 
SpreadsheetApp.CopyPasteType.PASTE_VALUES, false);
};

, который я сгенерировал из макроса, который я сделал, скопировав значение для переопределения формула, но она выдает ошибку, говоря, что у меня нет разрешения на «copyto».

Я на самом деле отчаялся, я не программист

Спасибо за помощь и будьте в безопасности

РЕДАКТИРОВАТЬ: Вот ссылка без личных данных о том, что я пытаюсь сделать.

https://docs.google.com/spreadsheets/d/19-Jv2kDUXxMXUid1EqDmwceZXU3w6U2Nd5uqwr3Swes/edit#gid = 0

Как видите, я бы хотел преодолеть проблему циклических ссылок: если условие не выполняется, вы не меняете значение, которое было в ячейке. Таким образом, я могу отслеживать данные, содержащиеся в «фактическом дне», в «сохраненные дни».

...