运行 后,脚本电子表格函数被删除

After running the script spreadsheet functions get deleted

我是 Google 脚本的新手。而且我对其他代码的了解不多。 不过,我希望我有一个脚本可以将我的日程安排从 Spreadsheet 导出到 Google Calendar。我已经能够基于这个主题创建一个脚本: Create Google Calendar Events from Spreadsheet but prevent duplicates

唯一的问题是,当我 运行 脚本时,我在 spreadsheet 中创建的函数消失了。有解决办法吗?

问题是 getValues() 不获取公式,只获取它们的结果,您还需要 getFormulas(),但是这个只获取单元格的值。 解决方案:在开始一切之前,将公式和值合并到一个 var 中,例如:

var data = range.getValues();    
var formulas = range.getFormulas();
  for( line in data )
    for( column in data[i] )
      if( formulas[ line ][ column ] != '' )
        data[ line ][ column ] = formulas[ line ][ column ];

然后才进行正常的 for(i in...)