In Google Blättern Script Einstellung, ich versuche Wert kopieren von einer Zelle in Blatt A zu einer anderen Zelle in Blatt B.GoogleSheet Script Zellenwert
Die Probleme ist, wenn ich avgUtilisationPerWeek() Funktion in Google starten Sheets Script Editor, der Code macht den Job, er setzt die Werte der Zellen so wie sie definiert sind.
Aber wenn ich die Funktion aus dem Zielblatt mit formula = avgUtilisationPerWeek() aufrufen, meldet es #FError "Sie sind nicht berechtigt, setValue aufzurufen (Zeile 108)."
In der benutzerdefinierten Funktion versuche ich, den Wert anderer Zellen im Blatt, nicht nur die Zelle, in der die Formel platziert ist.
Dies ist der Quellcode:
function avgUtilisationPerWeek(){
for(var i = 1; i < 14; i++) {
Utilities.sleep(3000);
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Dynamic Weekly Utilisation Report').getRange('D1').setValue(i);
t1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Dynamic Weekly Utilisation Report').getRange('L4').getValue();
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Graph Q1 2017').getRange((String.fromCharCode('A'.charCodeAt(0) + i)).concat('24')).setValue(t1);
v = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Dynamic Weekly Utilisation Report').getRange('L5').getValue();
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Graph Q1 2017').getRange((String.fromCharCode('A'.charCodeAt(0) + i)).concat('29')).setValue(v);
g = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Dynamic Weekly Utilisation Report').getRange('L6').getValue();
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Graph Q1 2017').getRange((String.fromCharCode('A'.charCodeAt(0) + i)).concat('34')).setValue(g);
t2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Dynamic Weekly Utilisation Report').getRange('L7').getValue();
SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Graph Q1 2017').getRange((String.fromCharCode('A'.charCodeAt(0) + i)).concat('39')).setValue(t2);
}
}
ich diesen Artikel gelesen, aber knapp über die Lösung finden.
Google Script setValue permission
Transferring cell data in Google Script?
Wenn ich Code der onOpen Funktion im Script-Editor gesetzt und die Funktion in dem Blatt mit = onOpen() ausführen, erhalte ich die Meldung „SpreadsheetApp.getUi nicht() aufrufen können aus diesem Zusammenhang. (Line 16). " –
Sie sollten es aus dem Menü ausführen können - onOpen() erstellt ein Menü neben dem Rest der Benutzeroberfläche. – David