【发布时间】:2017-10-14 23:11:25
【问题描述】:
我对 Excel VBA 和公式很陌生,但我需要在我创建的表单上有一个带有随机值的单元格,以便像唯一 ID 一样创建(我知道可能会有重复的数字,但它很苗条)发送给人们填写表格,但问题是如果我使用 RandBetween(00000000,99999999),隐藏和取消隐藏只是继续激活公式,如果我要发送,我很难跟踪这个模板供其他人填写。那么,当我有公式并且用户打开 Excel 表单时,有什么方法会随机化一个 8 位数字并复制和特殊粘贴覆盖它的值以冻结值。 (也欢迎其他方式,提前谢谢大家)
【问题讨论】:
-
是的,有办法。 几种方法。这么多方式,这个问题对于这个网站来说太宽泛了。尝试一些东西,查找如何实现一些你想要它做的事情。当您遇到障碍(特定编程问题)并且在此站点上找不到任何可以帮助您的东西时,那么您就有了一个可以回答的 SO 问题。请参阅How to Ask 了解更多信息。
-
但这已经是我的障碍了,我无法让它记录表单上的第一个随机数字并复制粘贴它,这样当用户将其发回给我时,我就可以冻结8 位 ID @Mat's Mug
-
说到record,你试过macro recorder吗? 记录自己的复制和粘贴,查看为您的每个操作生成的代码。根据需要调整它,并确保您 read this 删除所有
.Select和.Activate正在进行的操作。 -
This 问题(和答案)应该能让你有所收获。
-
当然,如果您想几乎绝对、肯定、肯定地保证唯一的 id,您可以使用
Left(CreateObject("Scriptlet.TypeLib").GUID, 38)返回 Windows 用来唯一标识事物的那种 ID。 (Universally unique identifier)
标签: vba excel excel-formula formula