Google Tabellen Script autorisieren
In diesem Tutorial zeige ich Euch wie Ihr Euer Google Tabellen Script autorisieren könnt (Stand März 2018).
Wenn Ihr ein Google Tabellen Script geschrieben habt oder von jemanden ein Script bekommen habt welches Ihr verwenden wollt, dann muss es vor der ersten Ausführung autorisiert werden. Damit werden Euch Hinweise gegeben das eine Gefahr für personenbezogene Daten besteht. Ihr solltet also den Entwickler von diesem Script vertrauen bevor Ihr es verwendet.
Vor allem wenn Scripte sehr lang sind, ist es manchmal sehr schwierig alle Einzelheiten davon sofort zu verstehen.
Wer jetzt das erste mal ein Google Tabellen Script programmiert, sollte sich zuerst dieses Tutorial hier anschauen:
Mein erstes Google Tabellen Script programmieren
Wie ich bei der Autorisierung vorgehe
Zuerst speicher ich das Script natürlich ab. Dafür könnt Ihr einfach auf das Disketten – Symbol klicken.
Hinweis: Ihr seht bei mir immer "unbenanntes Projekt". Das hängt damit zusammen dass ich das Script nicht umbenannt habe und genau mit diesem Namen ("unbenanntes Projekt") gespeichert habe. Solltet Ihr es anders genannt haben, dann erscheint natürlich jetzt gleich immer dieser Name.
Nach dem Speichern wähle ich mir die Funktion aus damit ich das Script ausführen oder debuggen kann. Debuggen dient einfach nur der Fehlerbehebung und führt dabei das Script ebenfalls aus.
Bei Punkt 1 seht Ihr wo Ihr die Funktion auswählen könnt. Links daneben seht Ihr dass die Funktionen für das Ausführen oder Debuggen noch nicht zur Verfügung stehen.
Sobald ich aber eine Funktion auswähle sieht es zum Beispiel so aus:
Jetzt habt Ihr die Möglichkeit eines der beiden linken Symbole auszuwählen. Sobald Ihr darauf klickt erscheint ein Dialogfenster welches Euch zum autorisieren auffordert.
Hier klickt Ihr dann auf "Berechtigung ansehen".
Im nachfolgenden Fenster bekommt Ihr die Möglichkeit das Benutzer – Konto auszuwählen mit dem Ihr Euch für dieses Script anmelden möchtet. Ich nehme dafür meinen Standard Google Account.
Nachdem ich jetzt mein Benutzer – Konto angegeben habe erscheint schon das letzte Fenster zum Autorisieren des Google Tabellen Scripts.
Hier wird Euch auch noch einmal angezeigt welche Berechtigungen dieses Script von Euch erhält.
Anschließend wählt Ihr dann nur noch "ZULASSEN" wenn Ihr ganz sicher seit das Ihr das auch wirklich möchtet 😉
Das war es auch schon wieder. Ich weiß, es sind viele Schritte aber diese dienen zu Eurer eigenen Sicherheit.
Schaut auch mal nach meiner kleinen Google Tabellen Script Snippets – Sammlung. Ich habe hier einige kleine Scripte geschrieben die Ihr vielleicht für Eurer Projekt nutzen könnt.
Dieses Tutorial ist extra für Anfänger die sich mit dem Tabellenkalkulationsprogramm GOOGLE TABELLEN / SPREADSHEETS noch nicht so viel beschäftigt haben. Es zeigt die Funktionen und Möglichkeiten Schritt für Schritt.
13 Comments
Nach mehreren Tests und viel Arbeit ging die Berechtigung verloren.
Ich kann das Script im Script-Editor problemlos ausführen.
Wenn ich aber das Script über den Trigger onEdit starten möchte, hat es keine Berechtigung.
kann es sein, dass das Umbenennen des Projekts dies ausgelöst hat?
Gruß Udo
Hallo Udo,
onEdit ist eine Funktion die ausgeführt wird sobald eine Zelle geändert wird.
Sobald Du ein Script das erste mal ausführen möchtest solltest Du eigentlich auch die Möglichkeit bekommen die Berechtigung festzulegen.
Das umbenennen von dem Projekt sollte eigentlich keine Auswirkungen haben. Intern wird vermutlich eine ID für das Projekt verwendet und der Name spielt dabei keine Rolle. Ich habe das gerade mal anhand von einem Beispiel getestet. Das Script wurde also auch nach der Umbenennung problemlos ausgeführt.
Ich würde das ganze mal auf ein komplett frisches Dokument übertragen. Dann bekommst Du ja wieder das Dialogfeld für die Autorisierung. Du kannst ja ganz einfach eine Kopie erstellen und dann im Script-Editor das ganze nochmal starten. Dann bekommst Du die Aufforderung zum Autorisieren. Das geht relativ zügig.
Falls Du aber ein zeitlich gesteuerten Trigger meinst dann würde ich eine andere Funktion benutzen und nicht onEdit.
Viele Grüße
Chris
Hallo Chris,
leider klappt das nicht. Auf die Idee mit dem Kopieren bin ich auch gekommen. Bin inzwischen bei der 5.Kopie, habe alle Tabellennamen und Projektnamen geändert, damit da nicht zufällig doch aufs Alte zugegriffen wird.
Mein Anwendungsfall ist der, dass ich aus einer Tabelle die Vereinstermine in den Kalender eintragen möchte. Wenn ich im Scripteditor bin und die Funktion direkt aufrufe, geht das problemlos. Wenn ich aber in der Tabelle bin dann bekomme ich den Berechtigungsfehler.
Ebensowenig kann ich eine eigene Funktion in der Tabelle verwenden – auch Berechtigungsprobleme.
Gibt es denn keine Möglichkeit die Berechtigungen von Hand einzutragen, bei Freigaben oder so?
Gruß Udo
Ich habe mal bei Webseite die Fehlermeldung eingestellt.
in der oberen Zeile wird die Funktion zur Berechnung des Ostertermins aufgerufen, was den angezeigten Fehler generiert.
in der 2. Zeile lasse ich das Datum vom Scripteditor aus in der Tabelle eintragen – geht problemlos.
Gruß Udo
Da bin ich leider überfragt. Das mit den Zugriffsrechten kenne ich nur über das Script selbst wenn Du das speicherst. Dort wird kontrolliert auf welche Bereiche Du mit dem Script zugreifst und genau dass wird dann auch für die Berechtigung angezeigt. Die Rechte kannst Du dann auch wieder entfernten wenn Du willst. Das machst Du dann über: https://myaccount.google.com/permissions.
Warum das jetzt im Script funktioniert und nicht in der Zelle kann ich so nicht nachvollziehen. Dafür müsste ich das auch erst einmal alles testen. Leider fehlt mir dafür aber die Zeit.
Ich hatte mal das Problem mit anderen Berechtigungen innerhalb einer Zelle. Da musste ich die Formel aufsplitten, sodass ich die Funktion welche das Berechtigungsproblem auslöste erst einmal separat ausführen konnte. Damit kam dann so wie bei Dir innerhalb der Zelle anstelle von einem Fehler die Autorisierung die ich aktivieren konnte. Anschließend hatte ich die Berechtigung und konnte die Formel wieder zusammen setzen. Erst dann hat es geklappt.
Viele Grüße
Chris
Hallo,
danke für deine vielen Tutorials. Ohne diese hätte ich mich nie und nimmer an das Scriting von Tabellen gewagt.
Jetzt habe ich ein fertiges, funktionierendes Skript, das für mich so geht, wie es soll.
Jetzt sollen aber auch andere in meiner Google Suite-Domäne das Skript ausführen können. Ich gebe die Datei zum Bearbeiten frei, aber die können nicht auf das Skript zugreifen. Wenn sie Tools, Skriteditor auswählen wollen, erhalten sie eine Fehlermeldung, dass die Seite (vorübergehend) nicht erreichbar sei. Das muss etwas mit den Rechten zu tun haben., ich kann es mir jedenfalls nicht anders erklären.
Hast du einen Tipp für mich? Du bist meine letzte Hoffnung!
Hi, mit dem Freigeben von Scripten für andere habe ich mich bisher noch nicht weiter beschäftigt. Alles was ich bisher programmiert habe war ausschließlich für mich und natürlich zum selbst lernen. Möglicherweise wirst Du die Funktion als Web App speichern müssen und diese zur Verfügung stellen müssen. Aber wie gesagt, konnte mich bisher noch nicht weiter damit beschäftigen. Zur Zeit steht ein riesiger Berg an Arbeit vor mir, deshalb wird das noch etwas dauern bis ich mich weiter damit beschäftigen kann. Sorry, dass ich keine bessere Antwort für Dich parat habe.
Viele Grüße
Chris
Kennst du denn evtl. andere Anlaufquellen, wo ich fündig werden könnte?
Ich bin gerade so begeistert vom Skripting – durch deine Tutorials – da wäre es echt schade, derart ausgebremst zu werden.
Gerade habe ich bemerkt, dass der andere User doch auf das Skript zugreifen kann, es zumindest ausführen kann. Ich habe einen Button (Grafik) erstellt und beim Klick darauf wird das Skript ausgeführt. Es scheint so zu sein, dass im Browser nicht beide User gleichzeit Fenster offen haben dürfen… Komisch, aber wenn das so zuverlässig funktionieren würde, wäre das super.
Wenn Du der englischen Sprache mächtig bist wirst Du eine Menge Stoff im Internet finden. Wenn ich etwas brauche suche ich auch immer auf diese Weise und vergleiche mehrere Scripte und Beiträge. Manchmal dauert es etwas länger bis man einen guten Beitrag findet. In deutsch wirst Du sehr wenig finden, also am Besten gleich mit "Google Spreadsheets Script" oder so ähnlich auf die Suche gehen 😉
Bei der Programmierung gibt es einige Punkte die man leider akzeptieren muss. Zum Beispiel lässt sich über ein Smartphone kein Button anklicken. Der wird behandelt wie ein Bild. Vielleicht ändert ich das im Laufe der Zeit aber es gibt einiges was man noch entdecken kann und herausfinden muss. Es gibt auch den Bereich Trigger wo man Funktionen zuweisen kann. Schau Dir auch einmal diesen Bereich genauer an.
Ich bin übrigens nur Hobby-Programmierer und bringe mir die Sachen selbst bei. Ich versuche dann mein Wissen weiter zu geben. Allerdings fehlt mir bei den ganzen Projekten (nicht nur TOPTORIALS sondern noch weitere YouTube Kanäle und Webseiten) einfach die Zeit näher auf bestimmte Dinge einzugehen.
Ich bitte um Dein Verständnis.
Beste Grüße
Chris
Habe gerade herausgefunden:
– User B kann auf das Skript zugreifen, wenn es über einen Button (Grafik) ausgeführt wird
– und wenn User A nicht gleichzeitig ein Fenster im Browser offen hat.
Der Zugriff auf den Skripteditor kriege ich damit nicht, aber das macht in diesem Fall auch nichts.
So könnte ich leben, wenn es dauerhaft dabei bleibt. Ich teste weiter…
Ja, diese ganzen Eigenheiten werden mir sicher auch irgendwann über den Weg laufen und dann muss ich auch mal sehen ob es überhaupt eine Lösung gibt. Für den Eigengebrauch haben die Scripte bisher immer Ihren Dienst getan. Wie es bei Verteilen damit aussieht muss ich erst noch herausfinden. Der Punkt wird dann sicher Web App und die Funktionen HTMLServices sein, mit dem ich mich dann genauer auseinandersetzen werde. Aber das wird noch dauern 😉
Deine Tests und Erfahrungen kannst Du natürlich gerne weiterhin hier posten. Kann mir vorstellen dass es einige gibt die vielleicht die gleichen Probleme haben und nach Lösungsansätzen suchen.
Viel Spaß und viel Glück beim Testen. Ich weiß, die Programmierung kann richtig süchtig machen 😉
Viele Grüße
Chris
Hallo!
Ich habe ein Problem mit dem Button. Ich setzte einen Button in mein Spreadsheet ein. Dieser sollte das Skript starten.
Tut er aber leider nicht. Das Skript "Sort" würde super laufen. Aber es schreibt nach einem Klick auf den Button, "Skript-Funktion Sort konnte nicht gefunden werden. Wie kann ich dies bitte beheben?
Gibt es eine einfache Möglichkeit, ein Script von außen zu starten?
Also z.B. über eine URL (Get/Post)?
Theoretisch ja über eine Wertveränderung in der Tabelle. Wenn man ein Macro aber direkt schupsen könnte, wäre das klasse