根据今天股价是否上涨,更改单元格的颜色绿色或红色 您可以使用 Apps 脚本的基于时间的触发器代码参考

问题描述

我正在创建一个谷歌表格股票跟踪器,我遇到的问题是我创建了一个命令,根据今天的股价上涨或下跌来更改具有股价的单元格的颜色。

例如,如果亚马逊股票周一上涨使单元格变为绿色,如果周一亚马逊股票下跌使单元格变为红色。 我希望单元格变为绿色或不变为红色该单元格内的数字。

我使用 =GOOGLEFINANCE('Ticker';"price") 作为自定义单元格。

有人可以帮我吗?

解决方法

您可以使用 Apps 脚本的基于时间的触发器。

因此,根据您希望从自定义单元格中检查值的频率,您可以创建一个基于时间的触发器,例如每天早上 8 点运行。然后,在检查从 GOOGLEFINANCE 函数检索到的值后,您可以相应地为单元格着色。

代码

function checkValue() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var range = sheet.getRange('A1');
  var gfval = range.getValue();
  if (gfval < VALUE) 
    range.setBackground('RED');
  else
    range.setBackground('GREEN');
}


function createTrigger() {
  ScriptApp.newTrigger('checkValue')
      .timeBased()
      .atHour(8)
      .everyDays(1) 
      .create();
}

上面的脚本由两个函数组成:

  • checkValue 用于检查 GOOGLEFINANCE 函数返回的值,并根据它对单元格进行相应的着色;

  • createTrigge 用于创建每天早上 8 点运行的基于时间的触发器;

参考