Итак, я пытаюсь заставить скрипт Google работать только на нескольких листах.Тем не менее, это не работает прямо сейчас.Я попытался записать в журнал проблему, чтобы увидеть, где она пошла не так, и у меня, похоже, та же самая строка сравнивается с самой собой, однако она возвращает FALSE.
Код и журналы:
function onEdit(e) {
var activeSheet = e.source.getActiveSheet();
var activerange = e.range;
var activeSheetName = activeSheet.getName()
var ValidRange = {
top : 3,
bottom : 200,
left: 4,
right: 4,
};
var ThisColumn = activerange.getColumn
Logger.log("active_range: " + activerange);
Logger.log("active range col: " + activerange.getColumn + "active range row: " + activerange.getRow());
Logger.log("active_range.value: " + activerange.getCell(1, 1).getValue());
Logger.log("active_range. colidx: " + activerange.getColumnIndex());
Logger.log("active sheet: " + activeSheetName);
Logger.log("RWC Test: " + activeSheetName == "RWC CR's");
Logger.log("STK Test: " + activeSheetName == "STK CR's");
Logger.log("Comment Test: " + activeSheetName == "Comment Database");
if (ThisColumn < activerange.left || ThisColumn > activerange.right) return;
if (activeSheet.getName() == "RWC CR's" || activeSheet.getName() == "STK CR's" || activeSheet.getName() == "BTWD CR's"){
var FormulaToUse = range.offset(0, -1).getformula();
range.SetFormula = FormulaToUse
};
}
function test_onEdit() {
onEdit({
user : Session.getActiveUser().getEmail(),
source : SpreadsheetApp.getActiveSpreadsheet(),
range : SpreadsheetApp.getActiveSpreadsheet().getActiveCell(),
value : SpreadsheetApp.getActiveSpreadsheet().getActiveCell().getValue(),
authMode : "LIMITED"
});
}
Журналы:
[18-05-29 12:44:31:226 PDT] active_range: Range
[18-05-29 12:44:31:227 PDT] active range col: function getColumn() {/*
*/}
active range row: 1
[18-05-29 12:44:31:228 PDT] active_range.value: ID
[18-05-29 12:44:31:229 PDT] active_range. colidx: 1
[18-05-29 12:44:31:230 PDT] active sheet: Comment Database
[18-05-29 12:44:31:230 PDT] false
[18-05-29 12:44:31:231 PDT] false
[18-05-29 12:44:31:231 PDT] false
Ожидаемое поведение: 3-е значение False в журнале должно быть True - «База данных комментариев» - это строка, которая сравнивается с более ранней «Базой данных комментариев», которая должна возвращать «True», а не "Ложь"
Извините, если я допустил какую-то глупую языковую ошибку, относительно новую для скриптов Google
Цель - всякий раз, когда кто-то вводит данные, он будет "хранить"данные, используя формулы где-то еще, повторно отображать данные, где они были введены, используя рекурсивную формулу.