我的Excel文档中有两个超链接。
在第1页,在单元格A1中,我写了公式,
=HYPERLINK("#'Sheet1'!A1","click")
.
在表1中,在单元格A2中,我做了我认为相同的事情,但使用了交互式图形用户界面。在单元格A2中单击鼠标右键=>超链接=>在此文档中放置=>(键入单元格引用)A2。
我还写了一个非常短的子,当我点击这些超链接时,我会得到一个消息框。
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
MsgBox ActiveCell
End Sub
我已将此宏放入Sheet1中。
当我单击单元格A2时,会得到一个包含单元格值的MsgBox。如预期
但是,当我单击单元格A1时,什么也不会发生。
为什么这两个链接的行为不同?在单元格中使用公式时,如何使单元格A1的行为方式与单元格A2相同?
为什么?
我有一个生成csv文件的程序。为了简单起见,结构看起来有点像这样。
f1,f2,compare
f3,f2,compare
这意味着很容易覆盖格式。
然后打开此文件并将其另存为
.xlsm
.我想要的是,当单击比较时,它将运行一个宏。它可以是按钮、超链接或其他任何形式,只要它明显是可点击的。
所以我为什么要接近
=hyperlink(“‘sheet1’!A1“,”点击“)
因为很容易增加列后的数字,并且仍然显示它是可点击的。
因此,将csv文件输出的格式快速更改为
f1,f2,"=HYPERLINK(""#'Sheet1'!C1"",""compare"")"
f3,f2,"=HYPERLINK(""#'Sheet1'!C2"",""compare"")"
这项工作的目标是要有一些尽可能自动化的东西,因为这个工作簿可以有超过一千行的内容,所以我不可能手动地在每一行上整理出一个比较按钮。
更新2
单击比较按钮时,将运行宏。此宏被调用
CompareFiles
.它从同一行但在A列和B列中的单元格中获取值,将它们传递到shell命令中,并打开另一个用于比较文件的程序。