Bonjour,
C'est tout à fait possible !
- Note quand même que le script ne doit pas dialogue avec l'utilisateur, of course !
- Donc getUI n'est pas adéquat! A quoi servirait-il si le classeur était fermé ?
- De même onOpen() est un script qui s'exécute à l'ouverture, donc pas adéquat.
J'ai moi-même un certain nombre de scripts qui fonctionnent selon ce principe.
Si besoin, montre nous ton script ou ce que tu souhaites faire ! Exemple
var histo = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('historic')
var code = histo.getRange('B1').getValue()
//put a trigger on historic
function historic(){
if (testDateHour()==true) {histo.appendRow([new Date(),marketPrice(code)])}
}
function marketPrice(code) {
var source = UrlFetchApp.fetch('https://finance.yahoo.com/quote/'+code).getContentText()
var data = JSON.parse(source.match(/(?<=root.App.main = ).*(?=}}}})/g) + '}}}}')
return data.context.dispatcher.stores.StreamDataStore.quoteData[code].regularMarketPrice.raw
}
function testDateHour(){
var d = new Date();
// not on sunday and saturday and between 10am and 4pm
if (d.getDay()!=0 && d.getDay()!=6 && d.getHours()>=10 && d.getHours()<=16) {return true}else{return false}
}
avec un trigger sur historic qui fonctionne toutes les heures jours ouvrés entre 10h et 16h