2017-11-17 1 views
0

Ich habe ein Google-Blatt mit einem Skript läuft dahinter. Ich musste einige Tabs in einzelne Arbeitsmappen trennen und das Skript entsprechend aktualisieren. Eine der Funktionen, die ich hatte, war ein onEdit (e) -Trigger, der in der neuen Arbeitsmappe nicht mehr ausgeführt wurde. Im Rahmen meiner Prüfung, habe ich es nur vereinfacht:Google Script - onEdit (e) nicht auslösende

function onEdit(e) { 
    Logger.log("TEST"); 
} 

Egal, die Änderungen, die ich in dem Blatt machen dies angebracht ist, schreibt die Logger.log nie.

Ich habe einige Nachforschungen angestellt, vor allem zu den einfachen Trigger-Beschränkungen, und eine davon bezieht sich auf openByURL, die ich an anderer Stelle im Skript verwende.

var otherBook = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/etcetc/edit'); 

Auch wenn die onEdit (e) bezieht sich nicht direkt, ist die Anwesenheit des openByUrl im Skript, was die onEdit (e) ausgeführt wird, zu verhindern? Wenn ja, gibt es Möglichkeiten, das zu umgehen, sodass ich Aktionen basierend auf einer Bearbeitung auslösen kann, aber auch Daten aus einer anderen Arbeitsmappe abrufen kann?

Antwort

0

die Logger In Bezug auf, können Sie versuchen:

Logger.log(["TEST"]); statt Logger.log("TEST");

Ihre Login-Linie für mich nicht funktioniert entweder, sondern arbeitet mit den Klammern.

+0

Danke für diesen Vorschlag. Ich habe es versucht, und der Logger hat das auch nicht ausgelöst. – Andrew

+0

Dies liefert keine Antwort auf die Frage. Sobald Sie genug [Reputation] (https://stackoverflow.com/help/whats-reputation) haben, können Sie [jeden Beitrag kommentieren] (https://stackoverflow.com/help/privileges/comment); Stattdessen [geben Sie Antworten, die keine Klärung durch den Fragesteller erfordern] (https://meta.stackexchange.com/questions/214173/why-doe-i-need-50-reputation-to-comment-what-can- i-do-stattdessen). - [Aus Bewertung] (/ review/low-quality-posts/17984905) –

0

Ich habe das folgende in ein neues Skript eingefügt und das onEdit (e) funktionierte ohne ein Problem. Um Funktionen von onEdit aufzurufen, die für einfache Trigger eingeschränkt sind, installieren Sie stattdessen den Trigger und legen Sie fest, dass er bei der Tabellenkalkulation ausgelöst wird.

function onEdit(e) { 
 
    Logger.log("TEST2"); 
 
} 
 

 
function test() { 
 
    var otherBook = SpreadsheetApp.openByUrl('https://docs.google.com/spreadsheets/d/etcetc/edit'); 
 
}

Verwandte Themen