0

我正在尝试使用谷歌应用程序脚本将条件公式放入电子表格中,但我没有办法解决这个问题。

与所需 GAS 等效的 VBA 为:

子老化()

用于 ADVANCES 的 Rem 老化板

范围(“ap2:ap4000”)

.Formula = "=IF(u2="""","""",if(u2<0,""RC 后报告的交付"",IF(AND(u2>=0,u2<31),""年龄 0-30"",IF(AND(u2>=31,u2<=60),""年龄 31-60"",IF(AND(u2>=61,u2<=90),""年龄 61 -90"",IF(AND(u2>=91,u2<=120),""年龄 91-120"",IF(and(u2>120,u2<=180),""年龄 121-180" ",IF(u2>180,""超过 6 个月"",""""))))))))"

.Value = .Value

结束于

结束子

请在 GAS 中建议与此等效的 VBA。

谢谢

同样的问题发布在https://productforums.google.com/forum/#!category-topic/docs/spreadsheets/how-do-i/desktop/H2dXGR7arvU

4

2 回答 2

0
  1. 我认为您可以通过不对每个条件检查两次来降低复杂性
  2. 在JS中你可以在里面放单引号和双引号,或者在里面放“和\”。
  3. 您可以将 ArrayFormula 用于此类任务,甚至可以消除 Google Apps Script 或 VBA(最终只是一个公式)

SpreadsheetApp.getRange("AP2").setFormula('IF(U2:U4000="","",IF(U2:4000<0,"RC 后报告的交付",IF(U2:U4000<=30,"老化0-30",IF(U2:U4000<=60,"老化 31-60",IF(U2:U4000<=90,"老化 61-90",IF(U2:U4000<=120,"老化 91- 120",IF(U2:U4000<=180,"老化121-180","超过6个月","")))))))');

于 2012-07-04T11:02:37.370 回答
0

您可以使用Range.setFormula()在单元格中设置公式。

SpreadsheetApp.getActiveRange().setFormula('=SUM(A1:A100)');
于 2012-07-02T19:46:32.587 回答