首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >需要根据工作表单元格中的唯一ID运行宏

需要根据工作表单元格中的唯一ID运行宏
EN

Stack Overflow用户
提问于 2019-06-19 23:31:45
回答 1查看 78关注 0票数 0

用户将使用用户表单在工作表中输入新信息。此信息与参赛时提供的唯一ID相关联(即2019-7为今年的第7项)。目前,每条信息都放在一行中的单独单元格中。我想隐藏其中的一些单元格,但可以允许用户单击该行开头的唯一ID,这将运行一个宏,该宏将创建一个新的工作表,以用户友好的方式显示所有信息。

我曾尝试创建一个指向运行宏的超链接,但用于标识该超链接的代码不能是特定于单元格的。我需要一种更动态的方式让excel识别哪个ID被点击,然后使用它来收集该行中的其余信息(即隐藏的列)。

我最好的选择是在工作表中放置一个私有子,以便在单元格被更改/单击时识别它,但无法通过它,只是识别该单元格。我需要它来识别该单元格的内容,这将是唯一的ID。

我不会创建指向任何内容的超链接,我只需要excel在单击超链接时运行宏,然后在该宏中标识所单击的唯一ID和/或行。一旦我确定了ID或Row,我就可以从那里获取其他列中的其余信息。

EN

回答 1

Stack Overflow用户

发布于 2019-06-19 23:51:52

您可以使用工作表的BeforeDoubleClick事件:

代码语言:javascript
复制
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address <> "$A$7" Then Exit Sub
' below, call the functions/subs that produce your output worksheet
MsgBox "You clicked on " & Target.Address
End Sub

上面只适用于单元格A7。如果需要将其应用于整个列A,请稍作修改:

代码语言:javascript
复制
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("A:A")) Is Nothing Then Exit Sub
' below, call the functions/subs that produce your output worksheet
MsgBox "You clicked on " & Target.Address
End Sub
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56671311

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档