如何在 Google 表格中编写 ARRAYFORMULA,以根据 Google 表单提交生成唯一的字母数字输出?

问题描述 投票:0回答:1

我正在尝试在 Google Sheets 中编写一个 ARRAYFORMULA 函数,该函数将允许为通过 Google Forms 提交的条目建立标签系统。我想要为电子表格中输入的每个表单提交提供唯一的字母数字输出。每个条目将属于 20 个“类别”或标题之一(由表单响应确定),每个类别都有自己的编号系统。为了说明:指定为“HA”的第一个条目将具有输出“HA001”,下一个指定为“HA”的条目将具有输出“HA002”。但指定为“CP”的第一个条目同样会具有输出“CP001” - 无论 Google 表单提交的顺序如何。

我进行了多次尝试,使用 ROW、COUNTIF 和 MATCH 函数(全部在 ARRAYFORMULA 内)。举个例子:

=ARRAYFORMULA(IFS( ROW(A:A)=1, "临时盒 ID", LEN(A:A)=0, IFERROR(1/0),LEN(A:A)>1, (D:D&text ((行(A:A)+1-匹配(D:D,D:D,0)),"00000"))))

这里,D 列是“类别”(如上,“HA”或“CP”)。但给定“类别”(在本例中为“CA”)第二次出现时,返回“CA00003”而不是“CA00002”。

enter image description here

google-sheets array-formulas google-forms
1个回答
0
投票

您可以尝试以下公式-

=MAP(D2:INDEX(D2:D,COUNTA(D2:D)),LAMBDA(variable,variable&RIGHT("00000"&COUNTIFS(D2:variable,variable),5)))

© www.soinside.com 2019 - 2024. All rights reserved.