|    | 
     例えば、C4に  
= IF(B4="","",HYPERLINK("#sheet2!"&CHAR(64+COLUMN(D$3) )&ROW(A4),・・・)) 
が入力されていて、同様な式が複数箇所にあるとすれば、 
次のようなもので対応できるでしょう。 
 
Sub Sample4() 
  Dim fm As String 
  Dim r As Range 
  Dim p1 As Long, p2 As Long 
  Dim myRow As Long, myColumn As Long, mySheet As String 
   
  If TypeName(Selection) = "Range" Then 
    Set r = Selection 
    If r(1).HasFormula Then 
      fm = r(1).Formula 
      p1 = InStr(UCase(fm), "HYPERLINK") 
      If p1 > 0 Then 
        myRow = r.Row 
        myColumn = r.Column + 1 
        p2 = InStr(p1 + 11, fm, """") 
        mySheet = Mid$(fm, p1 + 12, p2 - (p1 + 13)) 
        Application.Goto Worksheets(mySheet).Cells(myRow, myColumn), True 
      End If 
    End If 
  End If 
End Sub 
 
あとは、HYPERLINKの第二引数に、 
ジャンプ先を取り出せるように忍ばせておく手があるでしょう。 
そうすれば、単にSelection.Value(に簡単な置換をしたもの)を使って 
ジャンプすることができるでしょう。 
 
 | 
     
    
   |