2016-08-09 72 views
1

Ich arbeite an einem Apps Script-Projekt für Google Tabellen und ich weiß nicht, ob es daran liegt, dass ich nie wirklich mit Google Tabellen oder Excel gearbeitet habe, aber ich weiß nicht wie um eine Formel für eine ganze Spalte durch Code festzulegen.Apps-Skript: Festlegen einer Formel für eine ganze Spalte

var cell = sheet.getRange([i], 2); 
var cell2 = sheet.getRange([i], 1); 
var inhoud = cell2.getValue(); 
cell.setFormula("=(" + inhoud/86400000 + "DATE(1970,1,1)"); 

Ich möchte jedes B einer Reihe etwas mit dem A der gleichen Zeile tun. Im Sheet Self ist es einfach, die Funktion einfach zu "ziehen", um sie auf jede Zeile anzuwenden, aber ich weiß nicht, wie ich das in Code umsetzen kann, da ich zum Beispiel A2 oder A2 nicht verwenden kann : A30. Ein Teil des Problems kann sein, dass es für die Schleife in einem ist:

var subsie = []; 

for (i = 0; i < subscriptions.length; i++) { 

    var subscription = subscriptions[i]; 

    creationdate = subscription.creationTime; 

    if (subscription.plan.planName == 'ANNUAL' && subscription.renewalSettings.renewalType == 'AUTO_RENEW') { 

    subsie.push([creationdate, ' ', subscription.plan.planName]); 
    Logger.log(subsie); 

    var cell = sheet.getRange([i], 2); 
    var cell2 = sheet.getRange([i], 1); 
    var inhoud = cell2.getValue(); 
    cell.setFormula("=(A1:A100/86400000) + DATE(1970,1,1)"); 

    } } 

    sheet.getRange(sheet.getLastRow()+1, 1, subsie.length, subsie[0].length).setValues(subsie); 

Das eigentliche Ziel ist es, die Epoche Werte von A in Daten zu konvertieren, die ich in vielen verschiedenen Weisen versucht, aber erwies sich als schwieriger als ich erwartet habe. Dies war die einzige Formel, die für meine Ausgabe zu funktionieren schien, die so war: . Wie kann ich diesen Code arbeiten lassen? Danke im Voraus!

+0

Hallo Clara, würden Sie bitte sagen, was Sie innerhalb 'Abonnements' bekommen? In welchem ​​Format erhalten Sie Daten im "Abonnement"? Können Sie Beispieldaten bereitstellen? und was willst du zwischen Spalte 'A' und 'B' ?? – YNK

+0

Formel: = UnixTime/86400 + 25569 – YNK

Antwort

2

it :)

Gelöst
creationdate = (subscription.creationTime/86400000)+25567;