公会名册表 - 在一列中逐行设置值

时间:2013-12-15 13:40:22

标签: google-apps-script google-sheets

我刚开始学习如何使用Google Apps脚本进行编码。勉强。

我有一个公会名单表(范围B2中的卡通名称:B和Realm(我们还在此列表中添加了潜在客户),范围为C2:C。

在D栏中,我想逐行将每个单元格的值设置为使用B和C中数据的函数(即“= wowi(B2,C2)”)

我的目的是能够在B列中添加任意数量的名称,并手动运行该功能以更新D列中每个的值,并在每个之间休眠一秒钟(以免滥用当名称列有点长时,“= wowi(toonName,realmName)”函数中的UrlFetch)

可悲的是,这是我放弃之前所得到的:

  function rosterUpdate() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var destCell = sheet.getRange("D2");
for (x = 0, x //(less than or equal to)// sheet.getRange("B2:B").getNumRows(), x ++) {
  if (x != 0 {
      NOCLUEWHATTODO-IDKWHYIEVENTRY;
      sleep(1000);
  }
}

}

我知道我需要使用for,但不太确定如何读取值并修改D单元格的值。我很可能会过度思考这个问题,因为现在早上5点30分,我正在进行大约2个小时的睡眠,但我真的很感激帮助。

提前致谢。对不起,如果我不好。 :

1 个答案:

答案 0 :(得分:0)

希望这能在获取和设置值方面回答你的问题(你应该查看文档:{​​{3}})以及如何在函数调用之间休息一秒钟,但是它会非常低效,因为它会迭代整个每次列出。

请注意,这很快就会被写下来,所以你可能需要使用i值才能让它正常工作,并且可能有更多,更清晰的方法来做到这一点!

    var listLength = sheet.getLastRow() - 1;

    for(var i = 0; i < listLength; i++){
      var toonName = sheet.getRange("B" + (i+2)).getValue();
      var realmName = sheet.getRange("C" + (i+2)).getValue();
      sheet.getRange("D" + (i+2)).setValue(yourFunction(toonName, realmName));
      Utilities.sleep(1000);
    }