Ich versuche herauszufinden, wie man jemanden aus einer Tabelle mithilfe von Google App-Skripten entfernt.Entfernen von Zugriff von einem Blatt mit E-Mail aus einer Zelle bearbeiten
Im Wesentlichen habe ich eine zentrale Tabelle mit Informationen wie E-Mails, Namen, UIDs usw. darauf. Ich versuche, die E-Mail von dieser Tabelle abzurufen und die removeEditor-Funktion zu verwenden, um diese E-Mail aus einer anderen Tabelle zu entfernen. Sie können den folgenden Code anzeigen.
var officerIDrow = officerID + 1;
var Tracker = SpreadsheetApp.getActive().getSheetByName('P_Tracker'); //the button is on the same sheet as this, this is why it is get active.
var PTBooking = SpreadsheetApp.openById("1JPS69ko99dQTEwjplF_l2l2G_T8RyHjxCyMxXd_AV_s"); //Referring to the other sheet where the email will be removed from editors.
var EmailAddressRange = "F" + officerIDrow; //This is the column where the emails are stored. The officer ID row refers to the user inputted value in a dialog. Don't worry about this, I have already checked to see if this is the issue,
var EmailAddress1 = Tracker.getRange(EmailAddressRange);
var EmailAddress2 = EmailAddress1.getValue();
var EmailAddress3 = Utilities.formatString(EmailAddress2); //In my desperation, I was trying to see if setting it as string would help.
PTBooking.removeEditor(EmailAddress3);
Dies ist nicht die Vollversion des Codes. Wenn Sie es sehen möchten, können Sie auf here klicken. Aber alles, was zählt, ist oben, alles andere funktioniert gut.
Der obige Code läuft gut, bis er die letzte Zeile erreicht, in der er versucht, die E-Mail zu entfernen. Die Fehlermeldung, die angezeigt wird, besagt: "Ungültige E-Mail:". Ich nehme an, nach dem "email:" -Bit sollte es anzeigen, was gezogen wurde. Aber das tut es nicht! Ich habe keine Ahnung, warum es die E-Mail nicht findet und benutzt, um Leute zu entfernen.
Kann jemand irgendwelche Probleme entdecken?
Danke,
Shaun.
Hallo, haben Sie versucht, manuell einen var als Know-Editor E-Mail-Adresse zu erklären und sehen, ob es funktioniert? Haben Sie versucht, mit getEditors zu sehen, was es zurückgibt und wie es es zurückgibt. In Var Tracker verwenden Sie einfache Anführungszeichen. '', aber in anderen verwenden Sie doppelt "". Vielleicht bleib bei einem und sieh zu. Ich weiß, du sagst, mach dir keine Sorgen über emailAddressRange, aber wenn ich es wäre, würde ich mir das auch ansehen. – Munkey
Per einfach, PTBooking.removeEditor ("[email protected]"); das geht nicht. Ich habe keine Ahnung, wie man sich überhaupt auf die andere Tabelle bezieht. –
Ich habe so etwas versucht. 'Funktion myTest() { var ss = SpreadsheetApp.openById (" ID HIER "); var editors = ss.getEditors(); ss.removeEditor ("[email protected]"); Logger.log (Redakteure); } ' Diese geloggte E-Mail-Adresse der Redakteure fein und entfernt den ausgewählten Editor aus einer externen Tabelle. Ich wäre interessiert zu sehen, was Ihre 'emailAddress2' Logger protokolliert. – Munkey