推文空间有点小,帮你修一下扣,但我没测试过
Sub three()
Dim cell As Range
'Dim targetSheet As Worksheet
Dim returnLink As Hyperlink
Dim targetRange As Range
'Dim myStr As String
'从第一分页中的C3单元格获取超连结
For Each cell In Sheets("库存总表").Range("C3:C1056")
'在每次循环中定义myStr变量,以确保其值不会超出范围
'不用这个变量,你确保的方式其实是检查储存格中超连结数量
'myStr = cell.Value
If cell.Hyperlinks.Count > 0 Then
'获取目标工作表和储存格
'简化写法,其他部份有需要用到的话再改回来就好
Set targetRange = Sheets(cell.Value).Range("E2")
'创建返回超连结
'应该可以单纯用targetRange.Hyperlinks.Add就好
'不需要再set给returnLink,不过若是debug方便可以留着
Set returnLink = targetRange.Hyperlinks.Add(Anchor:=targetRange, _
Address:="", SubAddress:="库存总表!" & cell.Address, _
TextToDisplay:="返回总表")
End If
Next cell
End Sub