Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script ARRAYFORMULA和COUNTA仅计算到当前行_Google Apps Script_Google Sheets - Fatal编程技术网

Google apps script ARRAYFORMULA和COUNTA仅计算到当前行

Google apps script ARRAYFORMULA和COUNTA仅计算到当前行,google-apps-script,google-sheets,Google Apps Script,Google Sheets,在D行中,我想计算E行(COUNTA)的值,但只计算列的当前行的值。 我尝试使用ARRAYFORMULA和COUNTA以及ROW,但从我所读到的内容来看,COUNTA无法使用ARRAYFORMULA。这个公式得到的是每行返回的列的总计数 我需要自动将公式应用于行(和新行),因此我打算使用ARRAYFORMULA。然而,我也在研究查询函数,但没有结果。我认为我的解决方案可能是脚本,但我对它们还不是很有信心。尝试如下: =COUNTA(IFERROR(INDIRECT("E1:E"&ROW(

在D行中,我想计算E行(COUNTA)的值,但只计算列的当前行的值。 我尝试使用ARRAYFORMULA和COUNTA以及ROW,但从我所读到的内容来看,COUNTA无法使用ARRAYFORMULA。这个公式得到的是每行返回的列的总计数

我需要自动将公式应用于行(和新行),因此我打算使用ARRAYFORMULA。然而,我也在研究查询函数,但没有结果。我认为我的解决方案可能是脚本,但我对它们还不是很有信心。

尝试如下:

=COUNTA(IFERROR(INDIRECT("E1:E"&ROW())))
试着这样做:

=COUNTA(IFERROR(INDIRECT("E1:E"&ROW())))

我想出来了。事实证明,我认为解决方案是应用程序脚本是正确的。这是我的密码:

function myFunction() {

  var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  ss.getRange("D2").setFormula("=IF(ISBLANK($A2),,COUNTA(INDIRECT($F2)))");

  var lr = ss.getLastRow();
  var downRange = ss.getRange(2, 4, lr-1);

  ss.getRange("D2").copyTo(downRange);

}

我想出来了。事实证明,我认为解决方案是应用程序脚本是正确的。这是我的密码:

function myFunction() {

  var ss = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  ss.getRange("D2").setFormula("=IF(ISBLANK($A2),,COUNTA(INDIRECT($F2)))");

  var lr = ss.getLastRow();
  var downRange = ss.getRange(2, 4, lr-1);

  ss.getRange("D2").copyTo(downRange);

}
D1:

=ARRAYFORMULA({“我想要什么”;
如果(ISBLANK(E2:LOOKUP(2,1/(E:E“”),E:E)),则,,
COUNTIFS(序列(查找(2,1/(E:E)),序列(2^20))-1),
“D1:

=ARRAYFORMULA({“我想要什么”;
如果(ISBLANK(E2:LOOKUP(2,1/(E:E“”),E:E)),则,,
COUNTIFS(序列(查找(2,1/(E:E)),序列(2^20))-1),

"分享一份你的工作表分享一份你的工作表我编辑了我的帖子,其中包括我需要自动填充公式以应用于所有行。这就是为什么我最初使用ARRAYFORMULA,但它似乎不适用于COUNTA。请对你的答案添加一些解释,以便其他人可以从中学习。我编辑了我的帖子,以包括我对自动填充公式的需要将公式应用于所有行。这就是我最初使用ARRAYFORMULA的原因,但它似乎不适用于COUNTA。请在您的答案中添加一些解释,以便其他人可以从中学习