• 締切済み

Hyperlink関数をクリックしてくれるマクロ

どなたか詳しい方教えていただけないでしょうか? ExcelのセルA1に以下のhyperlink関数を入れています。 =HYPERLINK(″#C″&MATCH(B1,C:C),″クリック″) 隣のB1に入れた数字を元にC列に存在する同じ数字先にジャンプするように関数を作ってます。 A1にできたリンクをクリックしたは、B1に入力されているものと同じ数字先のC列に飛ぶようにマクロを組みたいのですが、どうしたらいいでしょうか? ハイパーリンク関数がマクロに組み込めないのと色々調べてみましたがうまくいかないのでお手上げです。 どなたか詳しい方教えていただければと思います。 どうぞよろしくお願いします!

みんなの回答

  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.3

B1セルが書き換わったら、 B1に埋まった値と同じ値をC列の最終行から上方向に探し 最初に見つかったセルにリンクするHYPERLINKを A1セルに書き込む という動作でよければ、添付のようなコードでいかがでしょうか? Private Sub Worksheet_Change(ByVal Target As Range)    Dim HitRow As Long  Dim HitFlg As Boolean  Dim LastRow As Long  Dim i As Long    If ((Target.Row <> 1 Or Target.Column <> 2)) Then Exit Sub    LastRow = Cells(Rows.Count, 3).End(xlUp).Row  HitFlg = False    For i = LastRow To 1 Step -1   If Target.Value = Cells(i, Target.Column + 1).Value Then    HitFlg = True    Exit For   End If  Next i    If HitFlg = False Then   MsgBox "該当行が見つからない"   Exit Sub  End If    Hyperlinks.Add Anchor:=Cells(Target.Row, Target.Column - 1), Address:="", SubAddress:= _   "C" & Format(i, "0"), TextToDisplay:="クリック"   End Sub

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

ここへ質問しなくても、Googleで「vba followhyperlink」で照会すれば、関連記事がたくさん出るのではないか?

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.1

A1が選択されたらB1に入力されているものと同じ数字先のC列に飛ぶということでいいでしょうか。 該当するシートのシートモジュールに Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Fr As Range If Target.Address <> Range("A1").Address Then Exit Sub End If Set Fr = Range("C:C").Find(What:=Range("B1").Value, LookIn:=xlValues, lookat:=xlWhole) If Not Fr Is Nothing Then Fr.Select Else MsgBox "見つかりません" End If End Sub

関連するQ&A