gpt4 book ai didi

vba - 如何在 Excel 中生成 GUID?

转载 作者:行者123 更新时间:2023-12-01 16:29:19 26 4
gpt4 key购买 nike

我有一个 Excel 文件,每一行都有一个订单,我希望每个订单都有一个唯一的标识符,因此会有一个唯一 ID 列。每次填充一行时,我希望 Excel 自动为我填充“唯一 ID”列。我做了一些研究,并被指出了 GUID 的方向。我找到了以下代码:

Function GenGuid() As String
Dim TypeLib As Object
Dim Guid As String
Set TypeLib = CreateObject("Scriptlet.TypeLib")
Guid = TypeLib.Guid
' format is {24DD18D4-C902-497F-A64B-28B2FA741661}
Guid = Replace(Guid, "{", "")
Guid = Replace(Guid, "}", "")
Guid = Replace(Guid, "-", "")
GenGuid = Guid
End Function

但我不确定如何实现它。任何帮助将不胜感激。预先感谢您。

最佳答案

以下 Excel 表达式计算结果为 V4 GUID:

=CONCATENATE(DEC2HEX(RANDBETWEEN(0,4294967295),8),"-",DEC2HEX(RANDBETWEEN(0,65535),4),"-",DEC2HEX(RANDBETWEEN(16384,20479), 4),"-",DEC2HEX(RANDBETWEEN(32768,49151),4),"-",DEC2HEX(RANDBETWEEN(0,65535),4),DEC2HEX(RANDBETWEEN(0,4294967295),8))

-或(取决于区域设置/小数点和列表分隔符)-

=CONCATENATE(DEC2HEX(RANDBETWEEN(0;4294967295);8);"-";DEC2HEX(RANDBETWEEN(0;65535);4);"-";DEC2HEX(RANDBETWEEN(16384;20479); 4);"-";DEC2HEX(RANDBETWEEN(32768;49151);4);"-";DEC2HEX(RANDBETWEEN(0;65535);4);DEC2HEX(RANDBETWEEN(0;4294967295);8))

请注意,第三组的第一个字符始终为 4,以表示根据 RFC 4122 第 4.4 节的 V4(生成的伪随机数)GUID/UUID。

另请注意,根据同一 RFC,第四组的第一个字符始终位于 8 和 B 之间。

标准免责声明:生成的 GUID/UUID 的加密强度不高。

编辑:删除不可见字符

关于vba - 如何在 Excel 中生成 GUID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7031347/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com