2017-12-01 2 views
0

Ich habe diesen Code, der gut funktioniert. Die Schleife kopiert die Formel über die Zellen, die ich brauche.Google Apps Script Wie wird mit setFormula erhöht?

for(i=0;i<52;i++){ 
    activeSheet.getRange(124,2+i).setValue(text2); 
    activeSheet.getRange(125,2+i).setFormula("=SUMIF($A$1:$A$40;\""+text+"\";B1:B40)*B124"); } 

Allerdings brauche ich die Formel, um während der Schleife zu inkrementieren. Als Beispiel brauche ich die Schleife, um dies zu schreiben:

cell 1: =SUMIF($A$1:$A$40;\""+text+"\";B1:B40)*B124 
cell 2: =SUMIF($A$1:$A$40;\""+text+"\";C1:C40)*B124 
cell 3: =SUMIF($A$1:$A$40;\""+text+"\";D1:D40)*B124 

Kann jemand dabei helfen?

+0

Welchen Teil der Formel benötigen Sie inkrementiert? –

+0

Machen Sie mehr vars. Mit https://stackoverflow.com/questions/12504042/what-is-a-method-that-can-be-used-to-increment-letters können Sie das Alphabet durchlaufen. – mplungjan

+0

Müssen Sie die Formeln in den Bereich 'B1: BA40', ​​und die letzte Formel unten rechts wäre' = SUMME ($ A $ 1: $ A $ 40; \ "" + Text + "\"; BA1: BA40) * B124 "? – Slai

Antwort

0

Alle Formeln können gleichzeitig eingestellt werden. Die relativen Zeilen oder Spalten ohne $ werden automatisch angepasst:

// getRange(row, column, numRows, numColumns) 
activeSheet.getRange(124, 2, 1, 51).setValue(text2) 

activeSheet.getRange("B1:BA40").setFormula("=SUMIF($A$1:$A$40;\""+text+"\";B$1:B$40)*B$124")