我的电子表格中的一些表格的数据由Query公式填充。
在一张工作表中,我有一个由查询填充的数据,另一张工作单由查询本身填充。
这个双重查询使我无法从脚本中使用GetValues()读取数据。
当我尝试最简单的阅读使用:
var sheet = SpreadsheetApp.getActive().getSheetByName('Timeline');
var data = sheet.getRange('A15').getValue();
Logger.log(data);
结果是空的。在单元格A15中,我有一个查询公式,调用一个表,其中数据依次由query填充。
我估计,谷歌脚本无法从查询中读取值。
你知道吗?
谢谢。
@Robin问题是where子句toDate(I)> Date '31-12-2000'
。
我已经用YEAR(I)>2000
替换了它,脚本现在读取所有单元格。
之所以使用该子句,是因为在查询中需要排除日期为空的行。虽然它们看起来是空的,但似乎有一些隐藏的值,我认为是31-12-1899
。这可能是因为单元格的格式为"日期"。我将在其中进行调查,这也应该是另一个与当前问题无关的问题。
我认为这是因为日期在时间戳中。您的查询可能会将您的空值视为0,在时间戳中与第一次时间相对应(在00h00为1/1/1900,然后,每个增量代表一秒。
你应该尝试使用类似的soething进行空白检测
var A= getCell(x,Y).getValue()
if (A=""){
....
}