首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Excel VBA :用超链接文本填充目标单元格内容的超链接

Excel VBA :用超链接文本填充目标单元格内容的超链接
EN

Stack Overflow用户
提问于 2019-06-09 22:55:02
回答 2查看 204关注 0票数 0

关于VBA和excel中的超链接,这里有很多类似的问题,但没有什么我可以根据自己的情况进行修改。

在一个工作表上,我有一列名称(E:E),在另一个工作表上,我有一个单元格(D13)。

我要做的是对列(E:E)中的每个单元格进行超链接,这样当单击时,超链接不仅会将我带到单元格(D13),还会用我单击的名称填充单元格(D13)。

所以,点击"John Smith“(Sheet1!E1) -> (Sheet2!D13) = "John Smith”

EN

回答 2

Stack Overflow用户

发布于 2019-06-10 00:43:56

首先,您需要在标准模块中编写一小段代码来安装Sheet1中的超链接

代码语言:javascript
运行
复制
Sub MakeLink()
    Sheets("Sheet1").Hyperlinks.Add Anchor:=Range("E1"), Address:="", SubAddress:="Sheet2!D13", TextToDisplay:="Stuff"
End Sub

然后,您需要在工作表代码区中使用一个事件宏来执行内容传输:

代码语言:javascript
运行
复制
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    ActiveCell.Value = Sheets("Sheet1").Range(Target.Parent.Address).Value
End Sub
票数 3
EN

Stack Overflow用户

发布于 2019-06-09 23:20:47

我认为最好的解决方案可能是使用VBA。如果你不确定如何做到这一点,记录在e中选择一个单元格的宏,然后转到D13并更新它的值,然后查看所记录的代码并使用这些代码片段来创建代码。在较高的级别上,您可能希望在单击列E中的任何单元格时触发一个宏,该单元格执行以下操作:

Dim e_value = <value of selected cell in column E> ThisWorkbook.Sheets("name of sheet 2").Range("D13") = e.value Application.Goto Reference:=Worksheets("Sheet2").Range("D13"), Scroll:=False

请注意,上面的代码包含伪代码,但它应该让您对如何继续进行有一个大致的了解。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56515630

复制
相关文章

相似问题

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