Daten sortieren beim öffnen der Tabelle
In diesem Tutorial "Daten sortieren beim Öffnen" zeige ich Euch wie Ihr bei den GOOGLE TABELLEN mit Hilfe der Script-Programmierung einen Bereich direkt beim Öffnen der Tabelle sortieren könnt. Das Tutorial entstand aufgrund einer Anfrage. Hier wurde eine Möglichkeit gesucht eine Liste mit Kursen direkt nach dem Öffnen zu sortieren. In dem Beispiel benutze ich zwar keine Kurse aber andere Daten um die Sortierung sichtbar zu machen. Die Sortierung direkt nach öffnen des Dokuments lässt sich ganz einfach mit der Funktion onOpen bewerkstelligen. Diese Funktion wird nämlich immer aufgerufen wenn die Tabelle geöffnet wird. Hier muss nur der Funktionsaufruf für die Funktion zum Sortieren enthalten sein.
Wer jetzt das erste mal ein Google Tabellen Script programmiert sollte sich zuerst dieses Tutorial hier anschauen: Mein erstes Google Tabellen Script programmieren
Hier das Script zum Kopieren
// Funktion die beim Öffnen der Tabelle autmoatmisch aufgerufen wird function onOpen(){ // Aufrufen der Funktion zum Sortieren tabellenBereichSortieren(); } // Funktion die den Tabellen - Bereich sortiert den wir festlegen function tabellenBereichSortieren(){ // Auf das aktuelle Tabellenblatt zugreifen var sheet=SpreadsheetApp.getActiveSheet(); // Bereich festlegen wo die Daten sortiert werden sollen var sortierBereich=sheet.getRange("A2:B"+sheet.getLastRow()); sortierBereich.sort([{column: 2, ascending: true}, {column: 1, ascending: true}]); }
Euch gefällt die Datei und Ihr wollt Euch unbedingt bedanken?
Hier ist meine AMAZON – Wunschliste [HIER KLICKEN] 😉
Das Video-Tutorial "Daten sortieren beim öffnen der Tabelle (Google Tabellen Script)"
6 Comments
Hallo, vielen dank für das tutorial.
Ich habe eine Tabelle, die ständig mit neuen Datengefüllt wird. und diese sollen automatisch sortiert werden. Und zwar wenn in zeile X ein datum steht dann sollen diese nach unten "geschoben" werden und nach datum sortiert
werden.
Vor sortierung:
X
möglich
kennwort
02.05.2019
möglich
3.01.2019
Nach Sortierung
X
möglich
möglich
kennwort
03.01.2019
02.05.2019
mit werten kann ich durch das Video sortieren, aber leider nicht nach Wörtern oder Datum. Gibts es da überhaupt die möglichkeit zu ?
Ich habe Deine Frage bereits bei YouTube beantwortet. Bitte Fragen entweder hier auf meiner Webseite oder auf meinem YouTube Kanal stellen aber nicht auf beiden Plattformen die gleiche Frage. Das kostet mich unnötige Zeit, von der mir sehr wenig zur Verfügung steht.
Vielen Dank für Dein Verständnis.
Hier nochmal die Beantwortung der Frage (Kopie vom YouTube Kanal):
—————
Willst Du das über so ein Script machen?
Du kannst auf die Funktion SORT benutzen. Das sieht dann in etwa so aus:
=sort(A1:A5;1;FALSCH)
Bei dem Beispiel habe ich Deine Einträge einfach mal in den Zellen A1 bis A5 eingetragen und rechts daneben diese Formel eingetragen. Dabei kommt genau das raus was Du haben wolltest.
Du kannst natürlich auch die Funktion FILTER benutzen oder QUERY. Bei Filter kannst Du auch die SORT Funktion mit einbauen.
FILTER Tutorial:
https://www.youtube.com/watch?v=-f9wrPqe0eA
QUERY Tutorial:
https://www.youtube.com/watch?v=3iNxdHNyiiU
Hallo, sehr nützliches Tutorial!
Gibt es eventuell eine einfache Möglichkeit im bestehenden Script die Sortierung einer Spalte benutzerdefiniert zu gestalten?
Ascending würde die Werte "critical", "high","low" und "medium" genau in dieser Reihenfolge sortieren.
Ich würde aber gerne diese Reihenfolge vorgeben: "critical", "high", "medium", "low".
Hallo,
gibt es auch die Möglichkeit diese Sortierfunktion zu automatisieren sobald Daten in eine Zelle eingegeben werden?
Ich habe folgendes Problem oder möchte folgendes erreichen:
Ich habe ein Tabellendokument mit mehreren Tabellenblättern. Eines davon dient als Einge Tabelle (Eingabemaske). In dieser Eingabe Tabelle gibt es zwei Teams mit jeweils 3 Namen und eine Spalte daneben will ich Zahlen einfügen (Punkte). Nach jeder Eingabe soll sich die höchste Punktzahl mit dazugehörigen Namen automatisch an erster Stelle setzen und der Cursor in die darunterliegende freie Zelle rutschen (zur nächsten Eingabe). Diese Rankingreihenfolge soll sich in beiden Teams abspielen.
Vielen Dank schonmal im Voraus
Wie kann ich das einsellen das er dieses Skript bei Tabellenblett 1 nur macht und die anderen 10 in ruhe lässt?
Hallo
Ich habe deine Funktion schon mal benutzt und es hat prima geklappt. Leider habe ich aus Versehen die ganze Datei gelöscht. Nun habe ich sie neu aufgesetzt, aber die Funktion gibt mir einen Fehler an.
Ich will bei jedem Öffnen der Datei die Spalten E:G nach Spalte G aufsteigend und nach Spalte F absteigend sortieren.
Ich habe dein Skript kopiert und "A2:B" durch "E2:G" und unten "{column: 2, ascending: true}, {column: 1, ascending: true}" durch "{column: 3, ascending: true}, {column: 2, descending: true}" {column: 3, ascending: true}, {column: 2, descending: true}" ersetzt.
Die Fehlermeldung:
Fehler
Exception: Cell reference out of range
tabellenBereichSortieren @ Code.gs:20
Hier der ganze Code (ich habe die //Erklärungen extra mal drin gelassen):
// Funktion die beim Öffnen der Tabelle autmoatmisch aufgerufen wird
function onOpen(){
// Aufrufen der Funktion zum Sortieren
tabellenBereichSortieren();
}
// Funktion die den Tabellen – Bereich sortiert den wir festlegen
function tabellenBereichSortieren(){
// Auf das aktuelle Tabellenblatt zugreifen
var sheet=SpreadsheetApp.getActiveSheet();
// Bereich festlegen wo die Daten sortiert werden sollen
var sortierBereich=sheet.getRange("E2:G"+sheet.getLastRow());
sortierBereich.sort([{column: 3, ascending: true}, {column: 2, descending: true}]);
}
Was könnte hier das Problem sein?
Vielen Dank