Für Google-Tabellen-Skript, copyTo vs copyValuesToRanges & copyFormatsToRanges

Brauche ich zum kopieren einer Vorlage Zeile um einen neuen Bereich.

Die Vorlage-Zelle einen Inhalt haben, wo-format, Werte und Funktionen vorhanden sein können.

Da war ich beim kopieren einer Zeile zu einer Reichweite von mehreren Zeilen, die Funktionen copyValuesToRange() und copyFormatsToRange() sah gut aus.

Im wesentlichen mein code ging ein wenig wie diese;

Template.copyFormatToRange(sheet, 1, lastColumn, lastRow + 1, lastRow + N);
Template.copyValuesToRange(sheet, 1, lastColumn, lastRow + 1, lastRow + N);

Diese Kopien meinem template die Zeile über N neuen Zeilen ab lastRow+1.

Dann bemerkte ich, es war nicht das kopieren der Funktionen in der template-Zeile, z.B. =SUMME(B2:C2)

Kann ich getFunctions() um ein array, das die Funktionen enthält, die in meinem template-Zeile und setFunctions() , kopieren Sie Sie in eine Ziel-REIHE.
Ein Nachteil ist, dass ich das umsteigen in A1-notation, wodurch die Ausführungszeit für das Skript. Wichtig ist der Zielbereich, setFunctions() schreibt, muss die gleiche Größe wie das array. Das bedeutet, dass ich laufen eine for-Schleife zum kopieren der Funktionen, die über N Zeilen.

Wenn ich arbeite mit einer for-Schleife sowieso kann ich einfach

  • for-Schleife copyTo()

    statt

  • copyFormatToRange
  • copyValuesToRange
  • for-Schleife, um setFunctions

Ich versuche zu vermeiden, mit copyTo (), weil ich dachte, für N einer bestimmten Größe der einzelnen Befehle kopieren* * ****ToRange effizienter wäre, dass eine for-Schleife. Bin ich stecken mit der for-Schleife oder ist es eine clevere Art, wie ich kopieren kann, die Funktionen, die form einer einzigen Zeile, um eine Reihe von Zeilen?

InformationsquelleAutor Niccolo | 2014-08-12

Schreibe einen Kommentar