2017-04-11 6 views
-1

Ich habe ein Blatt namens 'Automatisch', wo ich eine Liste von Daten mit IMPORTXML importiert habe.Automatisches Speichern von Daten in Google Tabellen mit Google AppScript

Jetzt möchte ich die Liste der Daten jeden Tag zur gleichen Zeit aktualisieren, um in regelmäßigen Abständen eine Datenbank mit verschiedenen Aktienkursen zu erstellen.

Wie kann ich dies über Google AppScript tun?

Dies ist die Formel I ein Halten der Werte zu erhalten verwende ich brauche:

=IMPORTXML("https://www.avanza.se/aktier/om-aktien.html/5447/abb-ltd","//dl[@class='border XSText rightAlignText noMarginTop highlightOnHover thickBorderBottom noTopBorder']//dd")

Sie für Ihre Hilfe danken, und wenn ich einen Teil Sie brauchen, um darüber zu wissen ausgelassen , einfach fragen!

Picture of my sheet

+0

Willkommen. Auf dieser Website wird erwartet, dass Benutzer teilen, was sie gesucht/erforscht haben, um ihr Problem selbst zu lösen. Bitte nimm die [Tour] und check [ask]. –

Antwort

1

Sie können diese zu Ihrem Script-Editor hinzufügen. Speichern und starten Sie es. Genehmigen Sie die Popups. Dann gehen Sie zu Bearbeiten im Skript-Editor-Menü und wählen Sie "aktuelle Projekt Auslöser". Stellen Sie den Auslöser so ein, dass diese Funktion täglich zur gewünschten Uhrzeit ausgeführt wird.

function refreshData() { 
    var ss=SpreadsheetApp.getActiveSpreadsheet() 
    var s=ss.getSheetByName("Sheet1") 
    var lr= s.getLastRow() 
    var data= s.getRange(1,3,lr,1).getValues() 
    var s1=ss.getSheetByName("Sheet2") 
    var lr1=s1.getLastRow() 
    var dte=s1.getRange(lr1+1, 3, 1, 1).setValue(new Date()) 
    var lr1=s1.getLastRow() 
    var setdte=s1.getRange(lr1+1, 3, data.length, 1).setValues(data) 
    var clr=s.getRange("C1").clearContent() 
    var cell=s.getRange("C1").setFormula('=IMPORTXML("https://www.avanza.se/aktier/om-aktien.html/5447/abb-ltd\",\"//dl[@class=\'border XSText rightAlignText noMarginTop highlightOnHover thickBorderBottom noTopBorder\']//dd\")') 
} 

Ich fügte hinzu, eine Kopie zu Sheet2 mit Datum zu machen. Es fügt eine Kopie nach dem letzten Eintrag hinzu.

+0

Vielen Dank für Ihre Antwort Ed! Ich habe den Code zu meinem Skript hinzugefügt, aber es scheint nicht die Werte irgendwo zu speichern, wenn die Funktion ausgeführt wird, nur die aktuellen Werte im Blatt zu aktualisieren. Ich frage mich, wie man Werte periodisch speichert und die historischen Werte im Blatt speichert? @EdNelson – xNemox

+0

Sorry, das habe ich verpasst. Ich habe das Script überarbeitet, um es in Sheet2 zu kopieren. –

Verwandte Themen