2017-07-02 2 views
-1

Ich erstelle ein kleines Skript und eine der Aufgaben des Algorithmus muss darin bestehen, den größten Wert einer Reihe von Zellen zurückzugeben. Die Werte sind auf drei Registerkarten derselben Tabelle verteilt. A MWe der Kalkulationstabelle kann unten an der Verbindung betrachtet werden:Verwenden des Google Apps-Skripts zum Erzielen des größten Werts auf mehreren Tabs einer Tabelle

https://docs.google.com/spreadsheets/d/16WrsztYlOV7qDOMBqGYU8az26Bw9NoqdQ4Imk_hZM90/edit?usp=sharing

(für dieses Beispiel die Funktion 10 als eine Antwort zurückgeben muss).

Wie kann ich das erreichen?

Jede Anleitung wird sehr geschätzt,

Vielen Dank.

Antwort

1

Ein Skript ist bereits in Ihrem Beispiel. Überprüfen Sie einfach das Menü "Meine Tools", um es auszuführen. Es klappt.

function myMaxValue() 
{ 
    var ss=SpreadsheetApp.getActiveSpreadsheet(); 
    var sheets=['Sheet1','Sheet2','Sheet3']; 
    var values=[]; 
    for(var i=0;i<sheets.length;i++) 
    { 
    var sht=ss.getSheetByName(sheets[i]); 
    var rng=sht.getDataRange(); 
    var rngA=rng.getValues(); 
    for(var j=1;j<rngA.length;j++) 
    { 
     values.push(rngA[j][0]); 
    } 
    } 
    values.sort(function(a, b) {return a - b;}); 
    var max = values[values.length-1]; 
    SpreadsheetApp.getUi().alert('The max is ' + max); //Just checking to be sure it works 
    return max;  
} 
+1

Sie würden die oben genannten zu '= max (Sheet1! A: A, Sheet2! A: A, Sheet3! A: A)'? – pnuts

Verwandte Themen