亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

查找第一個空行的更快方法

查找第一個空行的更快方法

繁星淼淼 2019-12-27 09:11:48
我編寫了一個腳本,每隔幾個小時就會向Google Apps電子表格中添加新的一行。這是我發現第一個空行的功能:function getFirstEmptyRow() {  var spr = SpreadsheetApp.getActiveSpreadsheet();  var cell = spr.getRange('a1');  var ct = 0;  while ( cell.offset(ct, 0).getValue() != "" ) {    ct++;  }  return (ct);}它可以正常工作,但是當到達約100行時,它變得非常緩慢,甚至十秒鐘。我擔心到達數千行時,它會太慢,可能超時或更糟。有沒有更好的辦法?
查看完整描述

3 回答

?
互換的青春

TA貢獻1797條經驗 獲得超6個贊

Google Apps腳本博客上有一篇有關優化電子表格操作的文章,其中討論了可以真正加快處理速度的批處理讀寫。我在具有100行的電子表格上嘗試了您的代碼,大約花了七秒鐘。通過使用Range.getValues(),批處理版本需要一秒鐘。


function getFirstEmptyRow() {

  var spr = SpreadsheetApp.getActiveSpreadsheet();

  var column = spr.getRange('A:A');

  var values = column.getValues(); // get all data in one call

  var ct = 0;

  while ( values[ct][0] != "" ) {

    ct++;

  }

  return (ct);

}

如果電子表格足夠大,則可能需要以100行或1000行的塊為單位獲取數據,而不是獲取整個列。


查看完整回答
反對 回復 2019-12-27
  • 3 回答
  • 0 關注
  • 850 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號