Toptorials Tutorials WeblogoLogobild kleinLogobild kleinToptorials Tutorials Weblogo
  • ALLE THEMEN IM ÜBERBLICK
  • YouTube
  • INFOS
    • SITEMAP
    • ÜBER TOPTORIALS
✕
            No results See all results

            Aktive Zeile in andere Tabelle kopieren (Google Tabellen Script) Snippet

            • Startseite
            • Tutorials Google Google Tabellen Script Programmierung Google Tabellen Script Code Snippets
            • Aktive Zeile in andere Tabelle kopieren (Google Tabellen Script) Snippet

            Aktive Zeile in andere Tabelle kopieren

            In diesem kurzen Tutorial und zugleich Snippet zeige ich Euch wie Ihr mit der Google Tabellen Script Programmierung die ausgewÀhlte Zeile in ein anderes Tabellenblatt kopieren könnt.

            Wer jetzt das erste mal ein Google Tabellen Script programmiert sollte sich zuerst dieses Tutorial hier anschauen: Mein erstes Google Tabellen Script programmieren

            Beschreibung:

            In diesem Beispiel werden wir die gerade aktive oder ausgewĂ€hlte Zeile in ein anderes Tabellenblatt kopieren. DafĂŒr mĂŒssen wir natĂŒrlich erst einmal die Zeilennummer der aktiven Zelle wissen. Anschließend wird ein Bereich dieser Zeile in die andere Tabelle kopiert. Die GrĂ¶ĂŸe des Bereichs könnt Ihr natĂŒrlich anpassen. Die Kopie wird im neuen Tabellenblatt automatisch in die erste noch nicht beschriebene Zeile geschrieben. Somit könnt Ihr das schon fast wie eine kleine Datenbank benutzen.

            Die Funktion selbst ist relativ simpel. Man könnte diese sicher noch sehr viel kĂŒrzer schreiben aber ich denke zum besseren VerstĂ€ndnis sollte es so OK sein.

            Zuerst greifen wir auf das aktive Tabellenblatt zu.
            Anschließend lesen wir von der ausgewĂ€hlten Zelle die Zeilennummer aus. DafĂŒr benutze ich sheet.getActiveCell().getRow() .
            In der nachfolgenden Zeile lege ich den Namen der Zieltabelle fest. Hier habe ich "Tabellenblatt2" benutzt da Google Tabellen den Namen fĂŒr ein neues Tabellenblatt automatisch vergibt wenn Ihr das Plussymbol ganz unten benutzt. Hier könnt Ihr natĂŒrlich ein anderes Tabellenblatt benutzen. Wichtig ist aber das dieser Tabellenname auch existiert.

            Mit getSheetByName(zielTabellenName) kann man ĂŒber den Tabellennamen auf eine Tabelle zugreifen. Also greifen wir hier genau auf das Tabellenblatt2 zu.

            Danach möchte ich noch wissen welches die erste noch nicht beschriebene Zeile dieser Zieltabelle ist. Das mache ich ĂŒber getLastRow().

            In der letzten Zeile greifen wir mit getRange auf den Bereich der Zieltabelle zu und schreiben mit setValue die Werte dort rein. setValues bekommt als Parameter die Daten der Quelltabelle. Der Bereich der Quelltabelle wird wieder mit getRange fĂŒr den Bereich und getValues fĂŒr die Werte eingelesen.

            Aufgerufen wird die Funktion mit aktiveZeileInAndereTabelleKopieren. Dieses Script könnt Ihr ĂŒber Buttons (Zeichnungen oder Bilder) mit diesem Namen zuweisen.

            Vorab ein Video welches Euch zeigt wie man ein einfaches Script programmieren kann und wie Ihr den Scripteditor aufrufen könnt:
            Mein erstes Script programmieren mit GOOGLE Tabellen

            Achtung:

            Benutzt zum Üben eine separate Tabelle fĂŒr Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.

            Snippet: Aktive Zeile in andere Tabelle kopieren mit Google Tabellen Script Programmierung

            function aktiveZeileInAndereTabelleKopieren(){
            
              // Aktives Tabellenblatt
              var sheet = SpreadsheetApp.getActiveSheet();
              
              // Aktiver Bereich und auslesen der Zeile
              var row = sheet.getActiveCell().getRow();
              
              // Tabellenblattname wo die Daten gespeichert werden sollen
              var zielTabellenName="Tabellenblatt2";
              
              // Auf die Zieltabelle zugreifen
              var zielTabelle=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(zielTabellenName);
              
              // Letzte Zeile der Zieltabelle auslesen
              var letzteZeileVonZielTabelle=zielTabelle.getLastRow();
              
              zielTabelle.getRange((letzteZeileVonZielTabelle+1),1,1,10).setValues(sheet.getRange(row,1,1,10).getValues());
            
            }

            Die Benutzung der Scripte erfolgt natĂŒrlich wie immer auf eigene Gefahr.

            Euch gefÀllt das Script und Ihr wollt Euch gerne bedanken?
            Hier ist meine AMAZON – Wunschliste [HIER KLICKEN] 😉

            Dies ist Teil der Serie: "Google Tabellen Script Programmierung"

            Dieses Tutorial ist Teil einer Serie die als eine Art Datenbank fĂŒr kleinere Snippets dient. Damit habt Ihr die Möglichkeit fĂŒr Eure Projekte einen Teil des Codes hier direkt zu kopieren und wie in Modulbauweise das ganze anzuwenden.

            Die Liste aller Snippets findet Ihr hier:
            Google Tabellen Script Programmierung

             

            Das könnte Dich auch interessieren

            • Daten anderer Tabellen kopieren (Google Tabellen Script)
            • Daten einer Zelle in anderes Tabellendokument kopieren (GOOGLE Tabellen SCRIPT)
            • Daten mit Script an den Listenanfang verschieben (Google Tabellen Script)
            • EinfĂŒgen oder löschen einzelner Zellen bei Google Tabellen
            • Google Tabellen Script autorisieren
            • Hallo Welt in Google Tabellen Script
            • Kalender mit Tabelle verbinden / verknĂŒpfen (Google Tabellen Script)
            • Spalte einfĂŒgen (Google Tabellen Script) Snippet
            • Spalte löschen (Google Tabellen Script) Snippet
            • Tutorials ĂŒber Google Tabellen Script - Programmierung
            • Vergleichen der Werte von Zellen mit Google Tabellen Script
            • Zeitstempel programmieren in Google Tabellen
            • Zelle kopieren mit copyTo (Google Tabellen Script) Snippet
            • Zellenbereich kopieren mit copyTo (Google Tabellen Script) Snippet
            • Übersichts-Liste der GOOGLE Tabellen Script Tutorials

            5 Comments

            1. Deemarco sagt:
              14. Juni 2018 um 20:55 Uhr

              Hallo Chris,
              Erst einmal danke fĂŒr das was du machst und zeigst:) hab sehr viel gelernt von Dir weiter so.
              Nun zu mein Problem….. Ich möchte aus einer erstellten Tabelle gewisse Daten auf ein anderes Tabellenblatt kopieren. Dein Beispiel funktioniert sehr gut doch leider komm ich nicht auf die gewĂŒnschten Daten die ich ausgelesen haben möchte. Kleines Beispiel ich möchte vom Aktiven blatt die Zelle F26 in ein anderes Tabbellenblatt A1 haben. Ist so etwas machbar?

              Lg Marco

              Antworten
              • Chris sagt:
                14. Juni 2018 um 21:22 Uhr

                Hallo Marco, wenn ich Dich jetzt nicht falsch verstanden habe, dann mĂŒsste eigentlich diese Funktion genau das richtige fĂŒr Dich sein:
                https://toptorials.com/zellen-in-andere-tabellen-kopieren-google-tabellen-script-snippet/
                Hier musst Du dann nur die Quelle und das Ziel angeben. In dem Beispiel ist als Quelle ein Bereich angegeben. Hier kannst Du aber auch eine einzelne Zelle eintragen, also Deine F26. Das Ziel entspricht schon dem was Du geschrieben hast. Hier wird dann vom aktiven Tabellenblatt in das Tabellenblatt kopiert was in der letzten Zeile angegeben ist. Hier kannst Du dann auch einen anderen Namen benutzen. Das Tabellenblatt muss aber natĂŒrlich vorhanden sein damit es funktioniert.
                Viele GrĂŒĂŸe
                Chris

                Antworten
                • Deemarco sagt:
                  14. Juni 2018 um 21:52 Uhr

                  ich hatte dein beispiel: Snippet: Aktive Zeile in andere Tabelle kopieren mit Google Tabellen Script Programmierung genommen da ich daduch auch ein butten belegen kann.
                  Mein Projekt sieht so aus, ich habe 6 Rechner alle mit Rechner1 usw. Beschiftet Die Rechner werden von verschiedenen Personen genutzt. Nur durch drĂŒckendes Butten möchte ich Daten aus den Rechner haben auf ein Tabellenblatt wie zb, Name der Person, einen Grund und eine Zahl..
                  Wie gesagt dein Beispiel
                  function aktiveZeileInAndereTabelleKopieren(){

                  // Aktives Tabellenblatt
                  var sheet = SpreadsheetApp.getActiveSheet();

                  // Aktiver Bereich und auslesen der Zeile
                  var row = sheet.getActiveCell().getRow();

                  // Tabellenblattname wo die Daten gespeichert werden sollen
                  var zielTabellenName="Tabellenblatt2";

                  // Auf die Zieltabelle zugreifen
                  var zielTabelle=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(zielTabellenName);

                  // Letzte Zeile der Zieltabelle auslesen
                  var letzteZeileVonZielTabelle=zielTabelle.getLastRow();

                  zielTabelle.getRange((letzteZeileVonZielTabelle+1),1,1,10).setValues(sheet.getRange(row,1,1,10).getValues());
                  }
                  funktioniert nur kopiert er mir da zu viel und nicht das GewĂŒnschte. Wenn ich bei der Zeile zielTabelle.getRange((letzteZeileVonZielTabelle+1),1,1,10).setValues(sheet.getRange(row,1,1,10).getValues())……..; die Zahlen Ă€nder bekomm ich entweder nichts oder der wert passt nicht.

                  Antworten
                  • Chris sagt:
                    14. Juni 2018 um 22:32 Uhr

                    Soweit funktioniert das Script einwandfrei wie ich gerade schnell mal getestet habe.
                    Wenn Du einzelne Werte haben willst, dann könntest Du das in etwa so machen:

                    zielTabelle.getRange((letzteZeileVonZielTabelle+1),1).setValue(sheet.getRange(row,1).getValue());

                    Wenn Du vor getValue die 1 zum Beispiel in eine 5 Ànderst, wird Dir die Zelle in der 5 Spalte in die andere Tabelle kopiert und steht dann dort in der ersten Spalte.
                    Solltest Du grĂ¶ĂŸere Bereiche nehmen wollen, dann musst Du Deine Zeile entsprechend anpassen. Du musst aber darauf achten wie das mit den Parametern bei getRange genau funktioniert. Die letzten Beiden Parameter geben sozusagen die BoxgrĂ¶ĂŸe an.
                    https://developers.google.com/apps-script/reference/spreadsheet/sheet#getrangerow-column-numrows-numcolumns

                    Antworten
            2. Alessandra sagt:
              28. Januar 2020 um 14:56 Uhr

              Hallo Chris

              Vielen Dank fĂŒr die super ErklĂ€rungen und die tollen Videos. Bin grad fleissig daran mich in das scripten einzulesen und habe auch schon ein Projekt dass ich umsetzen möchte. Bei einerSache hĂ€nge ich allerdings gerade fest. Vielleicht hast du mir einen Tipp, wie ich folgendes meistern kann:

              Ich möchte ein Script erstellen, dass, wenn in Tabellenblatt 1 (Bereich (A3:H100) Text enthalten ist (z.B. in Spalte A stehen Namen, in Spalte B Beschreibung etc.), die Werte auf Tabellenblatt2 ĂŒbertrĂ€gt. Tabellenblatt2 soll eine Art Datenbank werden, mit allen EintrĂ€gen, die bisher erfasst wurden und noch so getĂ€tigt werden. Aus Tabellenblatt1 werden die Daten immer wieder verschwinden und durch Andere ersetzt, welche dann wieder in Tabellenblatt2 ergĂ€nzt werden sollen.
              Werte in Tabellenblatt1 werden teils HĂ€ndisch eingetragen und ein anderer Teil wird via Sverweis und der Funktion Verketten ĂŒbertragen…

              Mein Problem ist es, dass ich nicht weiss, wie ich das Script so hinbekomme, dass es mir alle Zeilen in Tabellenblatt2 ĂŒbertrĂ€gt, bei denen in Tabellenblatt1 in Spalte O ein Status auf "Erledigt" gesetzt wurde…

              Ich hoffe ich konnte es einigermassen verstÀndlich erklÀren.
              Falls du eine Lösung hast, wĂŒrde ich mich freuen.

              Besten Dank
              Alessandra

              Antworten

            Schreibe einen Kommentar Antworten abbrechen

            Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

            Mehr von mir ĂŒber Google Tabellen

            • Übersichts-Liste der Google Tabellen Tutorials
            • Übersichts-Liste der GOOGLE Tabellen Script Tutorials
            • Tutorials ĂŒber Google Tabellen Script – Programmierung
            • Tutorials ĂŒber Google Tabellen
            • Google Tabellen Script Programmierung
            • Google Tabellen Script Programmierung / Snippets
            • Alle meine Videos auf YouTube
            • Tutorial Wunsch Liste

            Neue BeitrÀge

            • REGAUS RegulĂ€re AusdrĂŒcke mit vielen Beispielen mit LibreOffice Calc
            • REGEXREPLACE RegulĂ€re AusdrĂŒcke mit vielen Beispielen mit Google Tabellen
            • REGEXEXTRACT RegulĂ€re AusdrĂŒcke mit vielen Beispielen mit Google Tabellen
            • REGEXMATCH RegulĂ€re AusdrĂŒcke mit vielen Beispielen mit Google Tabellen
            • REGEXERSETZEN RegulĂ€re AusdrĂŒcke mit vielen Beispielen mit Excel 365

            Neue Kommentare

            • Erdmann bei Wochentag von einem Datum ausgeben (LibreOffice Calc)
            • Chris bei Tutorial Wunsch Liste
            • Sabine Kniffka bei Tutorial Wunsch Liste
            • Chris bei Nur sichtbare Zellen in LibreOffice Calc summieren
            • Armin bei Tutorial Wunsch Liste

            Schlagwörter

            anfĂ€nger Anleitung anpassen ausrechnen auswahlliste Bedingte Formatierung berechnen Calc Datum Download Dropdownliste einfĂŒgen entfernen erstellen Excel FreeOffice Funktion google hinzufĂŒgen Jahresplan Kalender Lernvideo LibreOffice löschen Makro markieren Microsoft OpenOffice PlanMaker programmierung script spreadsheets Sverweis Tabelle tabellen Tutorial VBA Video Wenn Wenn Funktion Word wps spreadsheets Zeilen Zelle Zellen
            KONTAKT   IMPRESSUM    DATENSCHUTZERKLÄRUNG    HAFTUNGSAUSSCHLUSS (Disclaimer)   © copyright TOPTORIALS