推文空間有點小,幫你修一下扣,但我沒測試過
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