我有一个电子表格,它从谷歌表单中获取数据。我使用我在论坛上找到的公式生成一个唯一的ID,并将其分配给每个条目,避免重复。=arrayformula(if(len(B2:B);""&text(row(B2:B)row(B2)+2;"000")&RIGHT(VALUE(B2:B);3);iferror(1/0)))
我遇到的问题是,这个ID不是永久性的,每次在第一个条目和最后一个条目之间添加或删除一行时都会更改。
有人能帮我吗?我希望避免每次修改或删除重复条目时更改ID。
非常感谢!
发布于 2022-02-09 23:41:22
我遇到的问题是,这个ID不是永久性的,每次在第一个条目和最后一个条目之间添加或删除一行时都会更改。
出现此问题的原因是,唯一的ID是由动态公式生成的。根据定义,插入或删除行将导致公式重新计算,并可以修改所有现有ID。
解决方案不是使用公式来确定ID,而是将ID写入电子表格。有一个在唯一ID列中执行此操作的代码示例。
在这种情况下,您选择了根据行号构建唯一的ID。这充满了问题,因为如您所知,行号可能会随着行的插入或删除而改变。因此,ID不是唯一的风险是巨大的。我建议使用数据的其他属性,或者简单地保存数字的运行记录,并将下一个数字(最后一个数字加一个)作为唯一ID的一部分。
https://webapps.stackexchange.com/questions/162859
复制相似问题