2012-08-10 54 views
0

我在使用vba在Excel中将超链接分配给超链接时出现问题。当我在单元格B2中有四个超链接时,我可以使用下面的代码来工作:链接到它们自己的单元格的B5。如何将宏分配给VBA中的多组超链接excel

Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) 
For i = 1 To 5 
    If Target.Range.Address = "$B$" & 1 + i Then 
    MsgBox "test" & i & " works!" 
    End If 
Next 
End Sub 

问题是当我想在不同的列也被分配给宏在同一工作表添加多个超链接。有人知道怎么做这个吗?

在此先感谢,JW。

+0

我不知道我明白。如果它们在不同的列中,那么代码如何进入IF/EndIf? – 2012-08-10 11:17:15

回答

1

这个怎么样?

Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) 

Select Case Target.Range.Column 

    Case Is = 2, 3, 4 'change to whichever columns you need to reference 

     For i = 1 To 5 

      If Target.Range.Address = Cells(i + 1, Target.Range.Column).Address Then 

       MsgBox "test " & i & " works!" 

      End If 

     Next 

End Select 


End Sub