Google Sheets: как вызвать случайную функцию? - PullRequest
0 голосов
/ 14 января 2019

У меня есть лист в Google, и я продолжаю искать решение о том, как сделать так, чтобы скрипт рандомизации работал только тогда, когда это необходимо, а не каждый раз, когда я открываю лист или обновляю его.

Вот пример. Давайте возьмем лист выглядит так:

Sheet

Ячейка B5 имеет следующий код:

=index(B1:B3; randbetween(1;3); 1)

Он случайным образом сообщает мне цвет волос каждый раз, когда я обновляю или загружаю документ.

Но что, если я хочу новый цвет волос только один раз в неделю, но время от времени нужно открывать документ?

Я попытался поставить флаг в коде.

Sheet

И изменил код B5:

=if(B7=true; index(B1:B3; randbetween(1;3); 1); )

Таким образом, он запускает функцию randbetween только при установленном флаге.

НО! Когда флажок снят, цвет волос отображается пустым (справа, потому что в функции IF есть пробел). Как мне сохранить цвет волос таким же, каким он был раньше, и изменить его, только если я отмечу флажок?

Вот таблица .

1 Ответ

0 голосов
/ 14 января 2019

Может быть, вы просто делаете кнопку для запуска функции, которую будете нажимать раз в неделю?

function onOpen() {
    var ui = SpreadsheetApp.getUi();

    ui.createMenu('The name of menu')
        .addItem('Button name', 'functionName').addToUi(); 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...