2010-11-18 44 views
1

Ich habe eine benutzerdefinierte Funktion als Google Spreadsheet-Skript, das von den Werten anderer Zellen abhängt. Es läuft ok, wenn ich es zum ersten Mal in eine Zelle setze, aber wenn ich die Daten in den anderen Zellen ändere, bleibt es gleich. Wie kann ich die erste Zelle automatisch aktualisieren, wenn ich die anderen Zellen ändere?Benutzerdefinierte Funktion automatisch aktualisieren

Antwort

4

Ich fand eine Antwort, die mich nicht ganz glücklich macht, aber es ist gut genug, denke ich. Wenn Sie dem Skript einer Tabelle eine Funktion namens onEdit hinzufügen, wird diese jedes Mal aufgerufen, wenn die Daten bearbeitet werden. Also, das ist der Code, der für mich gearbeitet: (es hat einige Details, die nützlich sein könnten, damit ich sie ungeschnitten links)

function onEdit(event) { 
    if (SpreadsheetApp.getActiveSheet().getName().substr(0,5) == "thing") 
    SpreadsheetApp.getActiveSheet().getRange("I1").setValue(myCustomFunction()); 
} 

Dies macht Blätter, dessen Namen beginnt mit thing, erhalten das Ergebnis der myCustomFunction in der Zelle I1 .

Verwandte Themen