如何将一系列字符串转换为公式

How To Convert A Range of Strings To Formulas

提问人:kq76 提问时间:11/17/2023 更新时间:11/17/2023 访问量:33

问:

在B列中,我有一些区域描述(例如,63.5x88),在C列中,我想计算面积(例如,5588)。

通过阅读以前的答案,我有下面的脚本,但问题是它只计算 B2 并输入所有 C2:C 的答案。如何让它评估每个描述并将相应的结果放在区域列中?谢谢!

function setFormula(){
  var sheet = SpreadsheetApp.getActiveSheet();
  var source= sheet.getRange('B2:B');
  var formula = source.getValue();
  formula = formula.replace('x', '*'); 
  var target = sheet.getRange('C2:C');
  target.setFormula(formula);
}

我想我可能需要的只是一个简单的循环,但我是脚本的新手。

如果有一种方法可以用简单的公式而不是脚本来做到这一点,那就更好了。

google-apps-script google-sheets 谷歌表格公式

评论


答:

0赞 doubleunary 11/17/2023 #1

如果有一种方法可以用简单的公式而不是脚本来做到这一点,那就更好了。

是的,这可以通过普通的电子表格公式来完成:

=product(split(B2, "x"))

将公式放入单元格中。要将其应用于整个列,请使用 ,如下所示:C2B2:Bmap()

=map(B2:B, lambda(t, 
  if(len(t), product(split(t, "x")), t) 
))

参见 map()split()。

评论

0赞 kq76 11/18/2023
棒。谢谢!你只是给了我一些新功能放在我的工具带里。