如何在google工作表中进行设置,以便输入,比如单元格B2,清理它并将内容放入C2和D2单元格中?
例如,假设我在单元格B2中输入字符串“ts 4 x 4 x 3/8 x 13'-5”。我当然可以编写一个名为std_shape的脚本,它可以将其解析为输出数组[“HSS4X4X3 / 8”,“13'-5”“],当我将= std_shape(B2)放入单元格C2时,我会得到我想要的:C2将包含HSS4X4X3 / 8,而D2将包含“13'-5”“。但如何做到这一点,C& C列D会自动从B中的任何一行填写吗?使用arrayformula()往往会在C列上向下填充。
最有效的方法是什么?我希望能够列出B列中的材料清单,然后列C和C列。 D按照描述的方式格式化我的列表。例如列C& D将从我的B列输入派生,如下所示(我用“|”符号分隔列):
> B | C | D > ------------------------+---------------+---------- > TS 4x4x1/4 x 13'-4 | HSS4X4X1/4 | 13'-4" > L 5 x 3-1/2 x 5/16 x 6' | L5X3-1/2X5/16 | 6'-0" > PL 1/2 x 8 x 10 | PL1/2X8 | 0'-10" > W10x12 x 13' | W10X12 | 13'-0"
专栏C& D已将标准化的内容标准化为B.电子表格中的其他单元格将与这些标准文本一起用于vlookup和其他计算。我想保留B作为输入。我也希望验证B中的输入。例如,假设在vlookup中找不到上面的W10x12,那么该行的C列会说“W10x12不是有效条目”。
我所说的是我不知道如何在我的脚本中处理范围。我也想知道最有效的方法。毕竟,对于任何给定的行,列C& D只关心那个特定行的B值 - 我不希望我的函数在willy nilly周围抛出数组。也许某种“onEdit”类型的交易创造了C& C列。 D何时为任何特定行编辑B条目?
由于用户定义的函数除了溢出之外不能触及任何其他单元格,因此我正在进行大脑停顿。有一些方法可以做我在这里描述的事情吗?