【问题标题】:What is the difference between getHeight() and getNumRows() in Google Apps Script?Google Apps 脚本中的 getHeight() 和 getNumRows() 有什么区别?
【发布时间】:2020-12-17 17:03:49
【问题描述】:

背景:

根据documentation on Class Range,有两种不同的方法来获取给定范围内的行数:

getNumRows()

返回此范围内的行数。

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];

var range = sheet.getRange("B2:D5");
Logger.log(range.getNumRows());

返回

Integer — 此范围内的行数。

和

getHeight()

返回范围的高度。

var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];

var range = sheet.getRange("B2:D4");
// logs 3.0
Logger.log(range.getHeight());

返回

Integer — 范围的高度。

测试:

现在,测试以下代码 sn-p:

function diffTest() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
 
  var dr = ss.getDataRange();
  var h = dr.getHeight();
  var nr = dr.getNumRows();
  
  console.log(h);
  console.log(nr);
}

两种方法都将输出相同的结果 - 无论是通过编程获得的范围还是命名范围:

Dec 9, 2020, 11:18:08 AM    Debug   26
Dec 9, 2020, 11:18:08 AM    Debug   26

我已经排除的事情:

  • 如果在 UI 中手动更改,单元格的字面高度不会影响这一点
  • 单元格中的换行数也不会改变这个高度

问题:

Range.getHeight() 和 Range.getNumRows() 方法之间有什么区别(如果有)?

【问题讨论】:

  • 我认为没有。
  • 我也是这么想的,但曾几何时,我对getActiveCell() 和getCurrentCell() 也是这么想的,所以我想我还是把问题放在那里。

标签: google-apps-script google-sheets


【解决方案1】:

答案:

没有区别。它们都返回给定范围内的行数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多