Zugriff auf andere Tabelle mit importrange (Google Tabellen)
In diesem Tutorial zeige ich Euch wie Ihr bei den GOOGLE TABELLEN auf eine andere Tabelle mit IMPORTRANGE zugreifen könnt. Damit habt Ihr die Möglichkeit auf Daten von anderen Tabellen zuzugreifen.
Wer noch einen Schritt weiter gehen möchte, der kann sich ja auch mal folgende Tutorial anschauen. Hier kombiniere ich einmal die Funktion FILTER mit IMPORTRANGE:
Filter und Importrange kombiniert (Google Tabellen / Spreadsheets)
In diesem Tutorial könnt Ihr auch mal sehen wie man IMPORTRANGE mit der Funktion QUERY kombinieren kann:
importrange und query kombinieren (Google Tabellen)
Dieses Tutorial ist extra für Anfänger die sich mit dem Tabellenkalkulationsprogramm GOOGLE TABELLEN / SPREADSHEETS noch nicht so viel beschäftigt haben und zeigt die Funktionen und Möglichkeiten Schritt für Schritt.
Das Video-Tutorial "Zugriff auf andere Tabelle mit importrange (Google Tabellen)"
Das könnte Dich auch interessieren
- Funktion query() ähnliche Abfragen wie bei SQL (Google Tabellen)
- Wo steht die GOOGLE Tabellen ID
- Tutorials über Google Tabellen Script - Programmierung
- Übersichts-Liste der Google Tabellen Tutorials
- Filter und Importrange kombiniert (Google Tabellen / Spreadsheets)
- importrange und query kombinieren (Google Tabellen)
- Importrange mit Query und Datum (Google Tabellen)
- Tutorials über Google Tabellen
64 Comments
Hallo Chris
Prima Sache deine Tutorials, vor allem auch, weil es zu Google Tabellen kaum so ausführliche Infos für Anfänger gibt.
Zu importrange() hab ich noch eine Frage. Normalerweise werden ja beim Öffnen des Sheets die Daten aktualisiert. Ist es auch möglich das die Daten zu bestimmten Zeiten importiert werden, ohne das die Tabelle "händisch" geöffnet wird/werden muss?
Danke und Gruss
Gunter
Hi Gunter, das habe ich bisher noch nicht ausprobiert aber eventuell geht sowas mit Trigger.
Schau mal hier:
https://developers.google.com/apps-script/reference/script/clock-trigger-builder
Viele Grüße
Chris
Hallo Chris
Vielen Dank für die Info, das werde ich mal probieren.
Gruss
Gunter
Mach das Gunter.
Wenn das damit klappen sollte und Du Lust hast, kannst Du hier gerne bescheid geben 😉
Viele Grüße
Chris
Hallo Chris,
Du kanns tsuper erklären. Ich habe das mal umgesetzt und es klappt prima. Es werden die Daten, in dem Falle Namen, geholt. Nun möchte ich aber, wenn es geht noch gleich in alphabetischer Reihenfolge sortieren. Geht das?
Gruß
Chrisi
Hi Chrisi,
DANKE DIR erstmal für das nette Kompliment 😉
schau Dir mal dieses Tutorial an:
https://toptorials.com/importrange-query-kombiniert-google-tabellen/
Damit bist Du was Abfragen angeht super flexibel und kannst die Daten auch sortieren. Ist zwar im ersten Moment vielleicht etwas komplizierter aber das Lernen lohnt sich.
Viele Grüße
Chris
Achso Nachtrag, Es kommen auch doppelte Namen vor, da muss ich mir etwas überlegen dass diese dann gezählt werden.
Hi Chrisi,
wenn Du das mit dem importrange in Verbindung mit query machst könnte man das eventuell mit "GROUP BY" machen. Da könnte man die Namen dann gruppieren und zählen. Kommt aber darauf an wie Du die Daten anzeigen lassen willst denn Du kannst ja keine doppelten Einträge Gruppieren und dennoch die einzelnen Einträge anzeigen lassen. Das könnte man dann vielleicht mit anderen Funktionen verbinden (Zählenwenn oder Zählenwenns zum Beispiel).
Hallo,
erstmal muß ich sagen das ich deine Tutorials super finde.
Jetzt zu meiner Frage.
Ich erhalte Daten über ein Formular die in einer Tabelle gespeichert werden.
Die Daten habe ich mit IMPORTRANGE auf eine zweite Tabelle gezogen.
Jetzt will ich die Daten berechnen.
z.B. B2 -A2 für jeden neuen Datensatz was über das Formular reinkommt.
Wenn ich eine Formel in der IMPORTRANGE Spalte einfügen möchte, kommt eine Warnung, Meldung Array Ergebnis würde nicht erweitert, da dadurch Daten überschrieben würden.
Hast du eine Ahnung wie ich eine Formel da einbauen kann?
Gruß Tom
Hi Tom, das klingt als wenn Du über IMPORTRANGE mehr Daten einfügen möchtest, also der Bereich nicht ausreicht um alles darzustellen. Deshalb wird nicht alles dargestellt weil sonst die anderen Einträge überschrieben werden. Das bedeutet dass Du den Bereich der mit IMPORTRANGE eingefügt werden soll kleiner sein sollte oder die Formel zur Berechnung weiter weg muss. Ich vermute dass Du mit IMPORTRANGE auch in Spalte C Daten importierst, dort aber schon die Formel steht wo Du etwas berechnen wolltest. Du kannst natürlich auch die Daten mit IMPORTRANGE in eine Tabelle ziehen (z.B. Beispiel "Tabelle1") und die Berechnung in einem anderen Tabellenblatt (z.B. Tabelle2) vornehmen.
Viele Grüße
Chris
Hallo,
super hilfreiche Videos. Danke dafür schonmal 🙂
Ich habe das Problem, dass ich ca. 10 Tabellen habe, die in einer Gesamtübersicht in einer weiteren Tabelle untereinander dargestellt werden sollen. Wenn nun in Tabelle 1 eine weitere Zeile unten hinzugefügt wird, wird diese in der Gesamtübersicht nicht dargestellt, da an dieser stelle ja schon der Inhalt bzw. die Formel der Importrange von Tabelle 2 dargestellt wird. Wie würdest du das Problem lösen? Die Importrange müsste sich sozusagen bei einer weiteren Zeile, auch eine Zeile nach unten anpassen.
Vielen Dank
Hallo Daniel,
schau mal ob Dir dieses Script oder zumindest dieser Ansatz weiterhilft. Du musst das zwar anpassen aber so in etwa könntest Du das lösen. Eventuell noch die Funktion über eine onOpen Funktion ausführen.
https://toptorials.com/daten-anderer-tabellen-kopieren-google-script/
Hallo Chris
Super tutorials..??? ich habe auch gleich eine Frage:
Es geht um Arbeitszeit Erfassung und zusätzlicher Leistung feststellung.
Also
Ich habe eine Tabelle für jeden Tag um Arbeitszeit und Verkäufe einzutragen. Am Ende habe ich eine Zusammenfassung aller relevanten Daten. Jetzt möchte ich diese Daten per Importrange ect. In eine andere Tabelle übertragen. Wie kann ich erreichen das in der zweiten Tabelle (in der sind die Tage des Monats von oben nach unten eingetragen) das jeder Tag des Monats in der richtigen Zeile übertragen werden? Ich kann auch die betreffenden tabellen zur Verfügung stellen wenn das nötig ist.
Mit freundlichen Grüßen
O. Haffner
Hi Oliver,
ich habe mal auf die Schnelle ein Tutorial erstellt welches zeigt wie Du das realisieren könntest.
https://toptorials.com/importrange-mit-query-und-datum-google-tabellen/
Du musst die Abfrage natürlich noch etwas anpassen.
Viele Grüße
Chris
Danke Chris für die schnelle Antwort ich wollte es mal besser zeigen was ich gemeint habe hier ein paar screens von den Tabellen :
Tabelle 1
http://i67.tinypic.com/2j15x15.jpg
Da stehen am Ende in den grauen Feldern die Endergebnisse des Tages.
Tabelle 2
http://i64.tinypic.com/w12r8j.jpg
Hier sollten die Ergebnisse in die richtigen Felder. Wobei diese Tabelle für jeden Arbeitstag ist und die Zahlen sich immer ändern. Ich wollte das automatisieren das man nur Tabelle 1 ausfüllt und die Werte automatisch in Tabelle 2 integriert werden. Ist sowas überhaupt möglich?
Danke nochmal für deine Mühe ich hoffe ich konnte es gut genug erklären
Mfg Oliver Haffner
Hi Oliver,
ich kenne da keine weitere Lösung außer die Google Tabellen Script Programmierung, zumal Du die Daten in die Tabelle 2 schreiben möchtest. Es lässt sich zwar viel über den SVerweis, Query und Filter machen aber die Zuordnung und Speicherung der bestimmten Daten von Tabelle 1 auf Tabelle 2 in die dafür bestimmte Zeile wird mit Standardfunktionen nicht möglich sein. Zumindest kenne ich jetzt keine die Du auch dauerhaft nutzen kannst.
Mit der Programmierung könntest Du Dir eine Vorlagen Tabelle erstellen die gleichzeitig einen Button enthält. Diese kopierst Du dann immer und trägst meinetwegen nur das Datum ein. Über den Button wird dann alles in eine bestimmte Tabelle kopiert. Auch hier müsstest Du dann zum Beispiel Tabellen-Namen benutzen die das Script dann eindeutig zuordnen kann (wenn sich zum Beispiel der Monat oder das Jahr ändert). Über die Programmierung könntest Du das so gestalten dass Du die nächsten Jahre Ruhe hättest (außer bei Änderungen natürlich). Aber dass muss dann auch gut durchdacht sein. Allerdings wirst Du Dich da ganz schön in die Programmierung einarbeiten müssen.
Viele Grüße
Chris
Hallo Chris
Besteht die Möglichkeit das du oder jemand den du kennst für uns eine Tabelle und Verknüpfungen zu erstellen (gegen Bezahlung)? Könnten wir vielleicht mal telefonieren ? Ich denke für einen Crack wird das ein Einfaches sein sowas zu erstellen.
Wir bräuchten für jeden Tag des Monats ein leeres Abrechnungsblatt, Dann sollten die Daten in einem neuen Tabellenblatt zusammengefasst werden (am besten automatisiert. Doch das kann man vielleicht besser am Telefon besprechen.
Mfg Oliver
Hi Oliver, für Projektarbeiten fehlt mir leider die Zeit. Ich lasse die Frage aber hier mal drin, vielleicht findet sich jemand der das für Dich erstellen kann.
Aber ein paar Ideen kann ich vielleicht beisteuern.
Auf einer Tabellenseite, die man "Erstellen" nennen könnte, würde ein Button sein. Dann zusätzlich oben zwei Zellen wo einmal das Jahr und einmal der Monat steht. Dann noch eine Tabelle mit einer Vorlage die automatisch kopiert wird und immer angepasst werden könnte falls man das möchte.
Nach Eingabe der Daten (Monat und Jahr) wird durch Klicken auf den Button diese Vorlage in Tabellen kopiert die erzeugt werden. Die Erzeugung beinhaltet auch die Benennung der Tabellennamen nach Tag des Monats inklusive Monat selbst aber in abgekürzter Variante (3 Buchstaben).
Bei der Abarbeitung der Schleife ist im Script auch die Zellposition enthalten die das Datum enthält und wird ebenfalls automatisch in jede Tabelle eingetragen. Die Zellposition für das Datum könnte man eventuell auch direkt in die Erstellen-Tabelle hinterlegen (wo es in der Vorlage steckt). Die Tabellennamen die erzeugt werden könnten in ein Array geschrieben werden, welches später benutzt wird um die Zusammenfassung zu programmieren. Es wird dann zum Schluss eine Tabelle erzeugt die eine Zusammenfassung der Daten beinhaltet. Hier muss man vorher wissen aus welchen Zellen diese Daten kommen sollen. Auch dieses könnte man in die Erstellen-Tabelle festlegen.
Ein paar Snippets die helfen könnten:
Tabellenblatt hinzufügen:
https://toptorials.com/tabellenblatt-hinzufuegen-google-tabellen-script/
Bestimmte Zelle auswählen:
https://toptorials.com/bestimmte-zelle-auswaehlen-google-script-snippet/
Schleifen:
https://toptorials.com/uebersicht-der-schleifen-google-tabellen-script-snippet/
Kopieren eines Zellbereichs:
https://toptorials.com/zellen-in-andere-tabellen-kopieren-google-tabellen-script-snippet/
Viele Grüße
Chris
Hallo,
Du hast mir bisher sehr weiter geholfen.
Jetzt aber Problem:
Google Tabelle. Importrange
Ich bin also in der Lage Werte aus einer Master Tabelle zu übernehmen.
ABER:
Die Werte aktualisieren sich nicht wenn ich in der Master Tabelle Werte ändere.
kennst Du da eine Lösung ??
Herzlichen Dank !
Felix
Normalerweise sollte sich die Zieldatei aktualisieren sobald Du einen Wert in Deiner Masterdatei änderst.
Ich habe für IMPORTRANGE noch ein weiteres Tutorial und dort ändert sich auch die Zieltabelle sobald Du in der Quelltabelle (also so wie Deine Mastertabelle) einen Wert änderst.
https://toptorials.com/importrange-mit-query-und-datum-google-tabellen/
Vielleicht gab es in dem Moment keine Internetverbindung oder die Verbindung war extrem langsam (wegen irgendwelche Downloads)?
Andere Scripte die im Hintergrund arbeite könnten ebenfalls der Grund sein.
Mit der Taste F5 oder STRG + R kannst Du auch noch mal alles aktualisieren.
Aber wie gesagt, eigentlich müsstest Du gar nichts machen und es aktualisiert sich bei IMPORTRANGE von alleine.
Viele Grüße
Chris
Hallo Chris
Ich habe eine Tabelle erstellt (Vorlage) und möchte jetzt per Button diese Tabelle als nächstes Tabellenblatt kopieren. Zusätzlich möchte ich einige Bereiche der Tabelle (welche Funktionen enthalten damit sie nicht geändert werden können) sperren wie sieht das Skript dafür aus ?
MFG Oliver
function tabellenblattHinzufuegen(){
var spreadsheetName="Testtabelle";
SpreadsheetApp.getActiveSpreadsheet().insertSheet().setName(spreadsheetName);
}
Wie muß ich den Text abändern ?
Hallo Oliver,
da ich für meine letzte Antwort kein Feedback bekommen habe, war ich am überlegen ob ich mir überhaupt die Mühe machen soll auf die neue Frage zu antworten.
Ich habe Dir hier aber trotzdem einmal ein paar Beispiele rein geschrieben.
Was allerdings die Berechtigungen angeht, habe ich mich bisher selbst noch nicht weiter damit auseinander gesetzt. Vielleicht hilft Dir diese Seite weiter:
https://developers.google.com/apps-script/reference/spreadsheet/protection#setrangerange
Beispiele für das kopieren von Formeln und Bereichen:
// Bei diesem Beispiel wird die Formel von Zelle B1 in Zelle D1 kopiert.
function nurFormelKopieren() {
// Zelle A1 enthält irgend eine Zahl
// Zelle B1 enthält zum Beispiel die Formel =$A$1
var quellZelleMitFormel="B1";
// In Zelle D1 wird jetzt die Formel kopiert.
var zielZelle="D1";
var quellZelleMitFormelInhalt = SpreadsheetApp.getActiveSpreadsheet().getRange(quellZelleMitFormel).getFormula();
SpreadsheetApp.getActiveSpreadsheet().getRange(zielZelle).setValue(quellZelleMitFormelInhalt);
}
// Bei diesem Beispiel wird ein ganzer Bereich kopiert (A1:B2 in den Bereich ab Zelle D1).
// Mit contentsOnly kann festgelegt werden ob nur der Inhalt oder alles kopiert werden soll.
function bereichKopieren(){
var ss = SpreadsheetApp.getActiveSpreadsheet();
var quelle = ss.getRange("A1:B2");
var zielTabelle = ss.getSheetByName("Tabellenblatt1");
var zielZelle="D1";
// Nur Inhalt kopieren
// quelle.copyTo (zielTabelle.getRange(zielZelle), {contentsOnly: true});
// Mit Formeln kopieren
quelle.copyTo (zielTabelle.getRange(zielZelle), {contentsOnly: false});
}
Viele Grüße
Chris
Danke für die Mühe aber ich war in letzter Zeit auch sehr unter Druck und konnte kV erst jetzt wieder darum kümmern. Ich werde das gleich morgen mal testen und ich kann dann gerne ein Feedback darüber geben.
Oliver
Hallo Chris
Ich habe dein Skript mal kopiert und wenn ich den Bug klicke kommt auch keine Fehler Meldung und wenn ich das Skript ausführe steht da "Skript ausgeführt" aber es passiert nix. Ich möchte das tra Tabellenblatt "TGB-" in ein neues Tabellenblatt eingefügt wird damit man nur ch das Datum und den Namen eingeben muss.
Hier eine reduzierte Kopie der Tabelle
https://docs.google.com/spreadsheets/d/1n3mcR_xXPEBX5RCxLknL_icLtYnOYM0rMZQO2cjU1rs/edit?usp=drivesdk
Danke Oliver
Hallo Chris
Mein Skript sieht im Moment SO aus..
function seiteKopieren() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var quelle = ss.getRange("A1:m270");
var zielTabelle = ss.getSheetByName("TGB-");
var zielZelle="a1";
quelle.copyTo (zielTabelle.getRange(zielZelle), {contentsOnly: false});
}
..es passiert aber nix..
Ich habe diesen Code gerade getestet und er funktioniert.
Schau mal bei Dir ob überall dir richtigen Anführungszeichen gesetzt sind. Bei mir auf der Webseite werden diese leider in den Kommentaren immer falsch dargestelt
Wichtig ist bei der Ausführung des Scriptes, dass Du Dich in der Tabelle befindest wo die Quelldaten drin stehen, denn das ist ja auch im Script die aktive Tabelle von der die Daten kopiert werden sollen. Ansonsten musst Du das Scirpt so umschreiben dass Du angibst auf welchen Tabellenblatt sich die Quelldaten befinden, genauso wie Du es mit der Zieltabelle gemacht hast.
Falls Du einen Button erstellt hast, muss der sich in der Quelltabelle befinden. Wenn du das über den Script-Editor aufrufst muss dennoch Tabellenblatt1 aktiv sein.
function seiteKopieren() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var quelle = ss.getRange("A1:M270");
var zielTabelle = ss.getSheetByName("TGB-");
var zielZelle="a1";
quelle.copyTo(zielTabelle.getRange(zielZelle), {contentsOnly: false});
}
Danke Chris
Ich habe gerade gesehen, wie du gast hast, dass die Anführungszeichen falsch sind ich werde das heute Abend testen weil es am Handy leider nicht geht. Wird dann auch eine neue Seite erstellt?in die die Zellen kopiert werden?
Olive
Nein, Du gibst in Deinem jetzigen Script ja das Tabellenblatt "TGB-" an welches natürlich auch vorher schon vorhanden sein muss (könnte auch ein Grund sein warum es bei Dir nicht geklappt hat, wenn die Tabelle noch nicht vorhanden war). Willst du das in ein komplett neues Tabellenblatt haben, musst Du das nur vor dem Einfügen erstellen (Also das Erstellen der neuen Tabelle eine Zeile vor dem einfügen der Daten rein setzen). Der Name der Tabelle die Du erstellst und der Name wo Du die Daten rein kopierst müssen dann nur gleich sein. Du hast ja das Script gesehen wie man eine neue Tabelle erstellt.
Danke DAS war der Fehler.. Ich muß aber zwei verschiedene funktionen ausführen ? Erst die neue Seite erstellen und dann nochmal die Daten kopieren (wobei die Zellen und Zeilen Formatierung leider nicht stimmt).
function tabellenblattHinzufuegen(){
var spreadsheetName="TGB-Datum";
SpreadsheetApp.getActiveSpreadsheet().insertSheet().setName(spreadsheetName);
}
function seiteKopieren() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var quelle = ss.getRange("A1:M270");
var zielTabelle = ss.getSheetByName("TGB-Datum");
var zielZelle="A1";
quelle.copyTo (zielTabelle.getRange(zielZelle), {contentsOnly: false});
}
..SO sieht es im Moment aus aber ich habe zwei Buttons weil es nicht klappt das beide funktionen ausgeführt werde.
Oliver
Sollte eigentlich funktionieren:
function seiteKopieren(){
var spreadsheetName="TGB-Datum";
var ss = SpreadsheetApp.getActiveSpreadsheet();
var quelle = ss.getRange("A1:M270");
SpreadsheetApp.getActiveSpreadsheet().insertSheet().setName(spreadsheetName);
var zielTabelle = ss.getSheetByName(spreadsheetName);
var zielZelle="A1";
quelle.copyTo (zielTabelle.getRange(zielZelle), {contentsOnly: false});
}
..funktioniert !! Aber die Abstände stimmen nicht.
Oliver
Was meinst Du genau damit, dass die Abstände nicht stimmen? Bei mir entsteht eine Kopie 1:1.
Die Zelle Maße wurden bei mir nicht übernommen ich denke sie sind auf Standart..
http://i65.tinypic.com/wufo9h.jpg
Hallo Chris,
ich habe einen Bereichsnamen für Zellen mit Formeln vergeben. Diese möchte ich per Importrange in ein anderes Tabellenblatt holen. Überschriften funktionieren auch aber die Formeln kommen nicht mit. Ziel ist es, dass die reingeholten Formeln diverse Ergebnisse basierend auf anderen Daten des Tabellenblattes liefern. Es gibt letztlich viele dieser Blätter und deshalb möchte ich die Formeln nur in einem Tabellenblatt halten/pflegen. Hast Du eine Idee wie man so etwas erstellen bzw. lösen kann/sollte?
Hallo Achim, hast Du schon einmal probiert das mit einer Kombination aus SVERWEIS und IMPORTRANGE zu machen. Die Formel sieht dazu in etwa so aus:
=SVERWEIS(A1;importrange("DEINE_URL_ZUR_DATENQUELLE";"Tabellenblatt1!$A$1:$B$1000");2;0)
Damit das ganze funktioniert solltest Du vorher einmal "nur" IMPORTRANGE benutzen. Damit wird erst noch die Berechtigung erteilt (das siehst Du wenn du auf den Bezugs-Hinweis klickst). Anschließend, nachdem das mit der Berechtigung geklärt ist, kannst Du das wieder löschen.
Die URL und die Bezüge musst Du natürlich noch entsprechend anpassen 😉
Hallo Chris,
wie viele meiner Vorredner möchte ich mich bei Dir für die super Beschreibungen in Deinen Tutorials bedanken. Ich habe schon recht viele angesehen und freue mich immer, wenn ich wieder etwas gelernt habe.
Auch das importrange habe ich gerade ausprobiert und das eigentlich klappt auch ganz gut.
Nur jetzt kommt mein ABER:
Ich habe in der Masterdatei Formatierungen (buten Zeilen, die bestimmte Bereiche voneinander trennen).
Wenn ich also nun in der Masterdatei zwischen zwei solchen bunten Zeilen eine neue Zeile hinzufüge, wäre mein Wunsch, dass dies auch in der anderen Datei, von der ich von der Masterdatei importiere, auch übernommen wird. Da wird allerdings der Text in die "bunte Zeile" reingeschrieben.
Kann man die Formatierungen auch irgendwie mit importieren?
Hallo Torsten, vielen Dank für das nette Kompliment 🙂
Was deine Frage angeht gibt es soweit ich weiß keine Lösung als normale Funktion oder Formel. Hier wirst Du an der Script-Programmierung nicht vorbei kommen.
Einen kleinen Einblick wie so etwas gehen könnte siehst Du hier:
https://stackoverflow.com/questions/25106580/copy-value-and-format-from-a-sheet-to-a-new-google-spreadsheet-document
Das würde ich an Deiner Stelle aber erst einmal alles in separaten Tabellen testen und entsprechend Deiner Wünsche anpassen. Hier siehst Du aber schon mal was alles kopiert werden könnte. Ich habe das Script aber auch nur überflogen und es scheint mehr als nur eine Zelle entsprechend zu formatieren 😉
Viele Grüße
Chris
Hallo,
importrange habe ich erfolgreich durchgeführt.
Nun habe ich Änderungen in dem Quelldokument durchgeführt und bekomme in dem Zieldokument den Hinweis Bezug, Berechtigung muß erteilt werden. Ein Fenster "Zugriff erlauben" wird allerdings nicht angeboten.
Gibt es hierfür eine Lösung ?
herzlichen DAnk
Felix
Versuche mal die Funktion IMPORTRANGE in einer anderen Zelle auszuführen. Vor allem wenn Du diese mit anderen Funktionen kombinierst solltest Du diese mal komplett einzeln in einer Zelle ausführen lassen. Wenn Du die Berechtigung hast, dann kannst Du die zusätzlichen Einträge hinterher wieder löschen.
Ich hatte ebenfalls mal das Problem in der Kombination IMPORTRANGE und QUERY.
Hallo Chris,
sehr gute und verständlich aufgebaute Tutorials – danke
Ulli
Vielen Dank für das nette Kompliment 🙂
Hi Chris, vielen Dank für Deine Tutorials – total hilfreich! Jetzt habe ich aber ein weiteres Problem: Also ich kann mir Daten aus einem anderen Tabellendokument holen: =IMPORTRANGE("1dphzHF0H3N352UzxPiR7lPdcF7m1eTBxi770Hug-XL4";"Auswertung!D2:S2") Das funktioniert auch super. Gleichzeitig möchte ich aber nur die größten 4 Werte der 16 Werte von D2 bis S2 einfügen. Und da hapert es bei mir. Innerhalb eines Dokuments funktioniert bei mir =KGRÖSSTE(Auswertung!$D$2:$S$2;1) Wie bekomme ich nun beide Funktionen zusammen. Hintergrund: Mein Dokument hat 3 Tabellenblätter. Tabellenblatt 2 möchte ich gerne als iFrame auf eine Internetseite einbinden, und Tabellenblatt 3 auf eine andere; das geht meines erachtens aber nicht über Google Sheets.
Hi Chris, vielen Dank für Deine Tutorials, damit versteht man sehr gut, wie Google Sheets funktionieren und kann selber herumprobieren. Bei einer Sache komme ich nun aber nicht weiter. Ich habe erfolgreich =IMPORTRANGE("1dphzHF0H3N352UzxPiR7lPdcF7m1eTBxi770Hug-XL4";"Auswertung!D2:S2") in einer neuen Datei eingearbeitet. Da möchte ich mir jetzt nur die 4 größten Werte der 16 Zahlen anzeigen lassen bzw. einfügen. Innerhalb einer Datei =KGRÖSSTE(Auswertung!$D$2:$S$2;1) funktionierte dies. Wie bekomme ich das denn nun hin?
Hallo Sandra,
schau Dir mal die Funktionen IMPORTRANGE in Kombination mit QUERY an. Damit geht so etwas sehr viel einfacher. Die Einarbeitungszeit ist am Anfang vielleicht etwas größer um die Funktion QUERY zu verstehen. Wenn Du aber mit Webseiten zu tun hast und vielleicht dadurch auch ein bisschen Erfahrung mit SQL (MySQL und PHP passen ja perfekt zusammen), dann sollte es ein leichtes für Dich sein.
Wenn Du also ein wenig SQL kannst, dann wirst Du schnell merken dass die Möglichkeiten mit QUERY einfach genial sind.
Die einfache QUERY Funktion:
Funktion query() ähnliche Abfragen wie bei SQL (Google Tabellen)
IMPORTRANGE mit QUERY kombiniert (meiner Meinung nach für Dich interessant):
importrange und query kombinieren (Google Tabellen)
IMPORTRANGE mit QUERY und Datum:
Importrange mit Query und Datum (Google Tabellen)
Viele Grüße
Chris
Vielen Dank für die Info! Generell käme ich mit Query glaube ich auch weiter, ich finde aber nirgendwo, welche Query-Befehle bzw. Funktionen es gibt (auf deutsch).
Hi Chris, kleines Update. Konnte die Klippe anderweitig umschiffen und funktioniert!
Hallo Chris,
Deine Tutorials waren sehr hilfreich für mich, mein Problem ist wenn ich importrange ausführe und in der nächsten Tabelle ich den Zugriff erlaube passiert leider nichts es bleibt bei #Bezug und Berechtigungen werden hinzugefügt……dreht sich nur.
Hast du eine Idee Internetverbindung vorhanden und kein anderer ist in der Tabelle
Vielen dank schon mal im Voraus
Grüße Lia
Hi Lia,
das sollte normalerweise so funktionieren. Wenn Du dort wo der BEZUG Fehler steht rauf gehst, dann solltest Du den Hinweis bekommen das die Berechtigung erteilt werden muss. Wenn alle Parameter stimmen (natürlich auch der Verweis auf das Tabellenblatt korrekt ist) müsste es klappen. Ich hatte aber auch schon Fälle wo ich die Formel (IMPORTRANGE UND QUERY) splitten musste also aufteilen um so IMPORTRANGE einmal extra und ganz alleine ausführen musste um die Berechtigung erteilen zu können. Das kannst Du ja, falls es in der Zwischenzeit noch nicht geklappt hat, einmal ausprobieren.
Viele Grüße
Chris
Danke für deine schnelle Rückmeldung,
Leider will es immer noch nicht, wenn ich auf Bezug gehe kommt auch die Meldung „Tabellenblätter verbinden mit dem Button Zugriff erlauben „ aber wenn ich den an klicke kommt nur die Meldung „Berechtigungen werden hinzugefügt….“ und nichts weiter passiert. Formel und der Verweis im Tabellenblatt sind korrekt.
Splitten funktioniert leider auch nicht.
Grüße Lia
Wenn das nicht zu viel Aufwand ist würde ich die Tabellen eventuell noch einmal neu erstellen oder einfach kopieren damit Du andere Tabellen und neue ID's bekommst. So würde ich das zumindest machen wenn ich der Meinung bin dass ich keinen Fehler gemacht habe. Möglicherweise liegt der Fehler wirklich nicht bei Dir und Du musst entweder Geduld haben oder versuchst dass noch einmal mit frischen Tabellen. Kann ja möglich sein dass irgendwo bei den Servern etwas genau bei diesen Tabellen – Blättern / Dokumenten hängen geblieben ist.
Beste Grüße
Chris
Hallo Chris,
ich mus in erster Linie dir mitteilen, dass dein Video sehr hilfreich war. Bedauerlicherweise habe ich das Problem, dass nach korrekter Eingabe der Formel, keine Berechtigung des Bezuges eingeht. Das Rädchen dreht sich und das war's. Wie kann ich das umgehen ?
Vielen lieben Dank für deine Hilfe.
Liebe Grüße
Christina
Guten Tag Chris,
Ich kann mich meinen Vor-Kommentatoren nur anschliessen! schon einigemal hab ich hier bei Dir Antworten zu meinen fragen gefunden!
Momentan bin ich an einem Punkt wo ich zwar immer wieder auf Deiner Seite lande, aber die Lösung nicht finden kann…
Folgendes, für ein Junioren Fussball Turnier nutze ich ein gForm für die Anmeldungen der Mannschaften, diese werden in ein gSheet geschrieben. Nun habe ich in diesem gSheet mit den Anmelde Daten drin eine Zusätzliche Spalte mit "Check Kästchen" versehen, Sobald hier nun der Betrag für die Teilnahme eingegangen ist wird das angehackt. Nun habe ich versucht mit dem IMPORTRANGE die Mannschaften in eine neue Tabelle übernommen werden, allerdings nur diejenigen welche das Kästchen angehackt haben. Kann ich das mit dem IMPORTRANGE lösen oder müsste ich dies mit einem
Importrange mit QUERY machen wie Du hier https://toptorials.com/importrange-mit-query-und-datum-google-tabellen/ beschrieben hast?
Liebe Grüsse aus der Schweiz
Pete
Hi Chris,
großartig, Danke für das Video!
In der offiziellen Google-Dokumentation zur Funktion sind gleich zwei Fehler enthalten. Da beißt man sich wirklich die Zähne aus.
Dank dir wissen wir jetzt, dass nicht die komplette URL, sondern wirklich nur der Tabellenschlüssel verwendet werden muss.
Hi Chris,
vielen Dank für das tolle Tutorial zur Importrange.
Ich habe eine Frage zum Einsatz von SVerweis in Google Tabellen.
Ist es möglich den SVerweis über 2 Google Tabellen vorzunehmen. -> Tabelle A soll einen SVerweis erhalten mit Daten aus Tabelle B.
Über die Funktion Importrange könnte ich die Daten von Tabelle B in ein weiteres Tabellenblatt der Tabelle A ziehen und dann den SVerweis starten.
Sollte es aber über einen direkten Zugriff auf Tabelle B gehen würde ich das besser finden.
Bin auf deine Antwort gespannt.
Gruß Nicolas
Hi Chris,
ich habe viel von Deinen Tutorials gelernt. Jetzt knabbere ich an einem besonderen Problem mit importrange. Das Problem ist der Zugriff auf ein Datenbank-Spreadsheet, das über einen Trigger alle 30 Minuten aktualisiert wird. Solbald der Trigger aktiviert wird, gibt die importrangefunktion einen Bezugsfehler aus. Just, wenn der Trigger gelöscht wird, funktioniert die Funktion sofort völlig normal.
Warum ist das so und hast Du einen Tipp, wie man das umgehen kann?
Hallo Chris,
ganz herzlichen Dank für Deine Tutorials!!! Heute das erste Mal an google scripts dran und durch Dich viel schneller gewesen. Werde gleich etwas spenden.
Eine Sache macht importrange bisschen untauglich finde ich, oder kann man das lösen? Wäre super, wenn Du mir darauf antworten könntest:
Importrange erlaubt keine relativen Bezüge, oder? Das heißt, wenn z.B. importrange sich auf A1 bezieht und in der anderen Tabelle ganz oben eine Zeile eingefügt wird, dann bezieht sich importrange plötzlich auf das neue A1 statt auf A2. Oder kann man doch irgendwie relative Bezüge hinkriegen?
Danke und viele Grüße
Daniel
Hej Chris,
vielen Dank für dein Tutorial!
Ich wollte innerhalb einer Tabelle auf unterschiedliche Tabellenblätter verweisen und die google-hilfe-seite hat mir nur "importrange = Tabellenblattname + Zelle" verraten -> was nicht funktionierte
Die importrange funktion will nämlich noch eine dritte Info: den kryptischen Tabellennamen aus der URL.
Nachdem ich den hinzugefügt hatte, klappts nun endlich!
Vielen Dank dir!
Hallo Annika,
vielen Dank für Dein positives Feedback 🙂
Es freut mich dass alles geklappt hat.
Beste Grüße
Chris
Hi Chris, Danke für das hilfreiche Tutorial!
Wenn ich die Formel mit Excel Dateien welche ich in Google Online bearbeite benutze, kann nach der Eingabe der Formel zwar auf "zugriff erlauben" geklickt werden, aber das Rad dreht und dreht. Passiert nix. Bei reinen Google Sheet Tabellen funktioniert es. Gibt es hier einen Trick das es auch mit Excel Dateien funktioniert?
Tausend Dank
Liebe Grüsse
Deny
Hi Chris, wie kann ich einen relativen Bezug für Import Range herstellen? Sobald ich eine Zeilen einfüge oder lösche würde ja der angegebene Bereich in der Formel nicht mehr stimmen?
Bsp.
=IMPORTRANGE("ID";"F9")
Zeile wird eingefügt über F9 = F9 wird zu F10, Formel gibt nicht mehr den korrekten Wert aus.
Hättest du hierzu eine Lösung? Diese Formel ist zwar gut zum Daten verknüpfen, Man dürfte dann aber nurmehr Zeilen unterhalb aller Daten einfügen?
Herzlichen Dank! Martin
Danke für das sehr verständliche Tutorial. Die Datenübertragung aus einer Tabelle in die andere hat problemlos geklappt.
Leider kommt die Formatierung nicht mit. Heißt die Zellengrößen, Hintergrundfarben, Schriftgrößen etc. kommen nicht mit.
Gibt es dazu eine
Lösung?
Danke und liebe Grüße
Lars
Hi zusammen,
besten Dank für das verständliche Tutorial. Folgende Frage hierzu: Ich habe eine Datei, welche auf unterschiedliche "Datenbanken", also andere Tabellen zugreift. Diese Datei kopiere ich immer wieder, da ich sie für unterschiedliche Aufträge benötige. Konkret erklärt: Die Datei welche auf andere Tabellen zugreift ist eine Auftrags-Detail-Seite. Pro Auftrag benötige ich also eine eigene Datei. Diese kann ich jetzt zwar kopieren, ich muss in jeder neuen Kopie jedoch das "Zugreifen" auf andere Tabellenblätter erlauben. Gibt es irgendeine einfacherer Art und Weise den Zugriff schon beim Kopieren zu erlauben? Vielen Dank!
Hallo Chris, gibt es auch eine Funktion das die Notiz mit kopiert wird?