Попробуйте это:
function runTwo() {
var ss=SpreadsheetApp.getActive();
var sh=ss.getActiveSheet();
var rg=sh.getRange(3,4,2,1);
var vA=rg.getValues();
if (vA[0][0].toString().toLowerCase()=="yes"){
vA[1][0]="TASK - BC to be given access to IMS.";
} else{
vA[1][0]="TASK - BC to create Slack Channel.";
}
rg.setValues(vA);
}
Вот как функция onEdit ():
function onEdit(e) {
var sh=e.range.getSheet();
if(e.range.columnStart==4 && e.range.rowStart==3) {
if(e.value.toLowerCase()=='yes') {
e.range.offset(1,0).setValue("TASK - BC to be given access to IMS.");
}else{
e.range.offset(1,0).setValue("TASK - BC to create Slack Channel.");
}
}
}
Если ваша функция не запущена, как в первом примере, или пользователь получает правку во втором примере, то это невозможно. Там нет триггера, который обнаруживает изменения в одной ячейке.
Полагаю, вы могли бы использовать это как функцию ячейки. Как это:
function runTwo(A) {
if (A.toString().toLowerCase()=="yes"){
return "TASK - BC to be given access to IMS.";
} else{
return "TASK - BC to create Slack Channel.";
}
}
Поместите его в D4
как =runTwo(D3)