Programmierkenntnisse: Anfänger
Dauer: 5 Minuten
Projekttyp: Benutzerdefinierte Funktion
Ziele
- Verstehen, was die Lösung bewirkt.
- Informationen zur Funktionsweise der Apps Script-Dienste in der Lösung.
- Richten Sie das Skript ein.
- Führen Sie das Skript aus.
Informationen zu dieser Lösung
Wenn Sie in einer Tabelle ähnlich strukturierte Daten auf mehreren Blättern haben, zum Beispiel Messwerte des Kundensupports für einzelne Teammitglieder, können Sie mit dieser benutzerdefinierten Funktion eine Zusammenfassung für jedes Blatt erstellen. Diese Lösung wurde für Kundensupport-Tickets entwickelt, kann aber an Ihre Anforderungen angepasst werden.
Funktionsweise
Die benutzerdefinierte Funktion getSheetsData()
fasst Daten aus jedem Tabellenblatt in der Tabelle basierend auf der Spalte Status eines Tabellenblatts zusammen. Das Skript ignoriert Tabellenblätter, die nicht in die Aggregation einbezogen werden sollen, z. B. die Tabellenblätter ReadMe und Summary.
Apps Script-Dienste
Für diese Lösung wird der folgende Dienst verwendet:
- Tabellendienst: Ruft die zusammenzufassenden Tabellen ab und zählt die Anzahl der Elemente, die einer angegebenen Zeichenfolge entsprechen. Anschließend werden die berechneten Informationen einem Bereich hinzugefügt, der sich relativ dazu befindet, wo die benutzerdefinierte Funktion in der Tabelle aufgerufen wurde.
Vorbereitung
Für dieses Beispiel müssen die folgenden Voraussetzungen erfüllt sein:
- Ein Google-Konto (für Google Workspace-Konten ist möglicherweise die Genehmigung durch den Administrator erforderlich).
- Ein Webbrowser mit Internetzugriff.
Skript einrichten
Klicken Sie auf die Schaltfläche unten, um eine Kopie der Tabelle mit der benutzerdefinierten Funktion zum Zusammenfassen von Tabellendaten zu erstellen. Das Apps Script-Projekt für diese Lösung ist an die Tabelle angehängt.
Kopie erstellen
Skript ausführen
- Rufen Sie in der kopierten Tabelle das Tabellenblatt Zusammenfassung auf.
- Klicken Sie auf die Zelle
A4
. Die FunktiongetSheetsData()
befindet sich in dieser Zelle. - Rufen Sie eines der Inhabertabellenblätter auf und aktualisieren oder fügen Sie Daten hinzu. Hier einige Aktionen, die Sie ausprobieren können:
- Fügen Sie eine neue Zeile mit Beispielinformationen zum Ticket hinzu.
- Ändern Sie in der Spalte Status den Status eines vorhandenen Tickets.
- Ändern Sie die Position der Spalte Status. Verschieben Sie beispielsweise im Tabellenblatt Owner1 die Spalte Status von Spalte C in Spalte D.
- Rufen Sie das Tabellenblatt Zusammenfassung auf und sehen Sie sich die aktualisierte Zusammenfassungstabelle an, die
getSheetsData()
aus ZelleA4
erstellt hat. Möglicherweise müssen Sie das Kästchen in Zeile 10 aktivieren, um die im Cache gespeicherten Ergebnisse der benutzerdefinierten Funktion zu aktualisieren. Google speichert benutzerdefinierte Funktionen im Cache, um die Leistung zu optimieren.- Wenn Sie Zeilen hinzugefügt oder aktualisiert haben, werden die Ticket- und Statusanzahlen im Script aktualisiert.
- Wenn Sie die Position der Spalte Status verschoben haben, funktioniert das Skript weiterhin wie vorgesehen mit dem neuen Spaltenindex.
Code ansehen
Wenn Sie den Apps Script-Code für diese Lösung ansehen möchten, klicken Sie unten auf Quellcode ansehen:
Quellcode ansehen
Code.gs
Änderungen
Sie können die benutzerdefinierte Funktion nach Bedarf bearbeiten. Unten sehen Sie eine optionale Ergänzung, mit der Sie die Ergebnisse benutzerdefinierter Funktionen manuell aktualisieren können.
Im Cache gespeicherte Ergebnisse aktualisieren
Im Gegensatz zu integrierten Funktionen werden benutzerdefinierte Funktionen von Google im Cache gespeichert, um die Leistung zu optimieren. Wenn Sie also etwas in Ihrer benutzerdefinierten Funktion ändern, z. B. einen Wert, der berechnet wird, wird möglicherweise nicht sofort eine Aktualisierung erzwungen. So aktualisieren Sie das Funktionsergebnis manuell:
- Klicken Sie auf Einfügen > Kästchen, um einer leeren Zelle ein Kästchen hinzuzufügen.
- Fügen Sie die Zelle mit dem Kästchen als Parameter der benutzerdefinierten Funktion hinzu, z. B.
getSheetsData(B11)
. - Aktivieren oder deaktivieren Sie das Kästchen, um die Ergebnisse der benutzerdefinierten Funktion zu aktualisieren.
Beitragende
Dieses Beispiel wird von Google mit Unterstützung von Google Developer Experts verwaltet.