如何替换记录中的GUID,然后在Excel“唯一”公式中仅返回唯一的GUID?

问题描述 投票:-1回答:2

描述:

我在A:每个Excel选项卡上的一列中有一个包含不同GUID的记录列表(API请求)。 GUID格式******** - **** - **** - ************。 每个此类记录都包含GUID之前和之后的斜杠和文本。 还有没有GUID的记录。 如何在忽略不同GUID值的同时仅返回唯一记录?

我可以检索所有唯一记录,但现在需要用“{id}”字替换GUID,并缩短列表甚至更多跳过GUID值唯一性。

Excel公式(需要修复以替换GUID,并且仅返回唯一):

=iferror(unique({Sheet1!A:A; Sheet2!A:A}), "")

输入:

AAA/d20b334e-76c7-e811-a982-f2cb536a8f94/BBB
AAA/d20b334e-76c7-e811-a982-f2cb536a8f94/BBB
AAA/c63cb3bb-1f49-e811-a981-ee3456e98dd2/BBB
AAA/c63cb3bb-1f49-e811-a981-ee3456e98dd2
CCC/d20b334e-76c7-e811-a982-f2cb536a8f94
GGG/c63cb3bb-1f49-e811-a981-ee3456e98dd2/HHH
GGG/d20b334e-76c7-e811-a982-f2cb536a8f94/HHH
record-without-id-1
record-without-id-1
record-without-id-2

实际结果:

AAA/d20b334e-76c7-e811-a982-f2cb536a8f94/BBB
AAA/c63cb3bb-1f49-e811-a981-ee3456e98dd2/BBB
AAA/c63cb3bb-1f49-e811-a981-ee3456e98dd2
CCC/d20b334e-76c7-e811-a982-f2cb536a8f94
GGG/c63cb3bb-1f49-e811-a981-ee3456e98dd2/HHH
GGG/d20b334e-76c7-e811-a982-f2cb536a8f94/HHH
record-without-id-1
record-without-id-2

预期结果:

AAA/{id}/BBB
AAA/{id}
CCC/{id}
GGG/{id}/HHH
record-without-id-1
record-without-id-2
excel replace unique formula guid
2个回答
0
投票

这是漫长的旅程,但我今天解决了! :) 在通过提到的原始函数将最终唯一值推送到摘要表之前,必须创建另一个“传输”列来执行此操作。 所以这里的主要思想是计算第一个破折号的位置和字符串中的GUID长度,因为我们知道确切的GUID格式。 请注意,此解决方案仅适用于仅在GUID中存在短划线的情况,因此记录的其余部分应该没有短划线。

=SUBSTITUTE(A1,MID(A1, FIND("-",A1)-8, 36),"{id}")

哪里 FIND(“ - ”,A1)-8是GUID的开头(第一个破折号前的8个符号) 36是GUID的长度


0
投票
=regexreplace(A1,"[0-9a-f]{8}?[-]?(?:[0-9a-f]{4}[-]?){3}[0-9a-f]{12}?","{id}")
© www.soinside.com 2019 - 2024. All rights reserved.