【发布时间】:2018-09-26 22:50:03
【问题描述】:
我正在编写一个带有两张工作表的 Excel 工作簿。在第一张表的 C 列 (Sheet1!C1:C500) 我在每个单元格中都有一个字符串。我编写了以下代码以查找该字符串在工作表 2 的 B 列中出现的位置 (Sheet2!B1:B184),并将工作表 1 中的单元格转换为指向工作表 2 中相应单元格的超链接。
Sub HypLinks()
Dim NametoFind As String
Sheets("Sheet1").Activate
For Each c In Range(Range("C1"),_
Range("C1").End(xlDown).End(xlDown).End(xlUp))
NametoFind = c.Value
Worksheets("Sheet2").Activate
Set gg = Range(Range("B1"),_
Range("B1").End(xlDown).End(xlDown).End(xlUp)).Find(NametoFind,_
LookIn:=xlValues)
Worksheets("Sheet1").Activate
ActiveSheet.Hyperlinks.Add Range("Sheet1!C" & c.Row),_
Address:="", SubAddress:="#Sheet2!" & gg.Address,_
TextToDisplay:=c.Value
Next
End Sub
一切正常,除了当我单击超链接时,它只将我带到 Sheet2,但不会激活 gg.Address 指定的单元格。如果我删除“#Sheet2!” gg.Address 指定的单元格已激活,但在工作表 1 而非工作表 2 中。
【问题讨论】: