我有一系列单元格,其中包含以下形式的数据:
“AAA;BBB;CCC”
理想情况下,我必须为 AAA、BBB 和 CCC 中的每一个创建一个单独的超链接。由于 Excel 只允许每个单元格有一个超链接,我想我可以在单击虚拟超链接时使用“ShellExecute”拆分单元格文本并打开三个网页。
我在单元格中创建了一个指向“www.google.com”的超链接,并在“FollowHyperlink”事件处理程序中编写了以下代码:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
Dim strArray() As String
Dim strSamp As String
strArray() = Split(ActiveCell.Text, ";")
For i = LBound(strArray) To UBound(strArray)
strSamp = "www." + strArray(i) + ".com"
lSuccess = ShellExecute(0, "Open", strSamp)
MsgBox (strSamp)
Next i
End Sub
Run Code Online (Sandbox Code Playgroud)
每次单击单元格时,浏览器都会打开 Google 并且不显示消息框。
我无法弄清楚我的逻辑哪里出了问题。我很感激你们中的任何人能给我的任何见解。
编辑:
我在一个新的工作表中重写了代码,代码正常运行。消息框现在正在显示,并且各个超链接正在浏览器中打开。但是除了单个链接之外,虚拟链接(在本例中为 Google)也会打开。如何阻止它打开?