为此目的编写了一些代码,但是新的附加组件不再适用。

在此先感谢,Iddo

===============>>#1 票数:34 已采纳

文件 - >电子表格设置 - >(标签)计算 - >重新计算(3个选项)
- 改变
- 在变化和每一分钟
- 变化和每小时
这会影响NOW,TODAY,RAND和RANDBETWEEN的更新频率。

但.. ..它只更新,如果函数参数(它们的范围,单元格)受到影响。

从我的例子
我使用谷歌电子表格来查找一个人的年龄。 我的生日日期格式为(dd.mm.yyyy) - >这是瑞士的使用格式。

=ARRAYFORMULA(IF(ISTEXT(K4:K), IF(TODAY() - DATE(YEAR(TODAY()), MONTH(REGEXREPLACE(K4:K, "[.]", "/")), DAY(REGEXREPLACE(K4:K, "[.]", "/"))) > 0, YEAR(TODAY()) - YEAR(REGEXREPLACE(K4:K, "[.]", "/")) + 1, YEAR(TODAY()) - YEAR(REGEXREPLACE(K4:K, "[.]", "/"))), IF(LEN(K4:K) > 0, IF(TODAY() - DATE(YEAR(TODAY()), MONTH(K4:K), DAY(K4:K)) > 0, YEAR(TODAY()) - YEAR(K4:K) + 1, YEAR(TODAY()) - YEAR(K4:K)), "")))

我正在使用TODAY() ,我进行了上述的重新计算设置。 - >但不会自动刷新。 :-(
如果我在函数查找范围内更改某个值,它只会更新。

所以我为此编写了一个Google脚本(工具 - >脚本编辑器......)。

function onOpen() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheetMaster = ss.getSheetByName("Master"); 
  var sortRange = sheetMaster.getRange(firstRow, firstColumn, lastRow, lastColumn);  

  sortRange.getCell(1, 2).setValue(sortRange.getCell(1, 2).getValue());
}

您需要为firstRowfirstColumnlastRowlastColumn设置数字

当电子表格打开时,脚本将处于活动状态,将一个单元格的内容再次写入同一个单元格。 这足以触发TODAY()函数。

请查看Edward Moffett关于该链接的更多信息。 强制google工作表公式重新计算

最好的祝福,
克里斯托夫

===============>>#2 票数:8

对我有用的是在第一列之前插入一列并立即删除它。 基本上,做一个会影响工作表中将触发重新计算的所有单元格的更改。

===============>>#3 票数:3

老问题......但是,只需在工作表中的某个位置添加一个复选框。 选中或取消选中它将刷新单元格公式。

  ask by iddo translate from so

未解决问题?本站智能推荐: