Ich versuche, eine benutzerdefinierte Trigger-Funktion, die auf Bearbeiten ausgelöst wird. Mein Ziel ist es, zu verfolgen, wenn ein bestimmter Bereich eines Blattes verändert oder hinzugefügt wird, und dieses in einem anderen Blatt einzufangen, indem ein String in einer bestimmten Zelle hinzugefügt wird. Diese Update-Markierung muss in Spalte I stehen und die Zeile mit der Referenz auf die ID der modifizierten Zelle schneiden.Google Blatt-Skript gibt mir "Fehler beim Hinzufügen oder Ändern von Eigenschaften von Objekten". Ich vermute, getRange related Problem
Jetzt, wenn ich versuche, es auszuführen, gibt es mir diesen Fehler, aber es hat keine weitere Erklärung, so habe ich keine Ahnung, wie weiter zu gehen. Können Sie mir bitte helfen? Dies ist mein Code:
function onEdit() {
var ss = SpreadsheetApp.getActive();
var e = ss.getActiveSheet()
var ecell= e.getActiveCell()
var allsheets = ss.getSheets();
var version = "0.4.0";
//Making sure that whatever was updated it is not in the first 5 columns nor in the first 2 rows
if (e.columnStart < 5 || e.rowStart < 2 || e.getSheetName() =="0.4.0") return;
//Trying to get hlook pointing to the F2 cell
var hlook= e.getRange('F2');
// Want to set up a formula in F2 so that I can get de location of the index (manual ID) value of ecell
hlook.setFormula="HLOOKUP(ecell, 'A'+ ROW(ecell) + ':' + 'Q' + ROW(ecell),3)";
// Want to retrieve the value returned from the formula
var eid=hlook.getActiveCell().getValue();
//Navigting all available sheets to set up updates
for (var s in allsheets){
var sheet=allsheets[s];
// Dismissing the master sheet
if (sheet.getSheetName()!="0.4.0")
{
//Assigning a variable to AA1 (or even further, whith is fine)
var con=e.getRange(1,28);
//Setting up a formula
con.setFormula="IFERROR(VLOOKUP(eid, 'C1:C35',1), false)";
// Retrieving formula result
var control=con.getActiveCell().getValue();
if (control!=false)
{
//If the value I am looking for actually existws on this sheet, enter update stamp at column I on the row where the value was found
var ro=VLOOKUP(eid, "C1:C350",1);
var cel="I" + ro;
cel.setValue(version)
}
}
}
}
Danke für Deine Zeit und die Vorschläge! Ich habe es versucht, aber ich denke, ich kann keiner Zelle irgendeinen Wert zuweisen, also bis ich herausfinde, warum kann ich nicht, dieses Projekt ist in der Warteschleife :( –
Könnten Sie möglicherweise Ihren neuesten Code als Bearbeitung? I Ich würde mich freuen, noch einmal durchzusehen und möglicherweise versuchen, Ihr Problem zu replizieren. Ich bin mir nicht sicher, was Sie seit dem letzten Mal geändert haben könnten. – David