- ベストアンサー
エクセル2007のハイパーリンクについて
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
ANo.1です。 う~ん、シェイプのハイパーリンクイベントは取れないですね。 発想を変えて、選択されたセルが「項目」で始まる名前定義がされていたらスクロールして一番上に表示すると言うので代用できませんか? これなら、ハイパーリンクでセルが選択されたと同時に一番上に表示されます。 ただ、ハイパーリンクでなく単に「項目1」等の名前定義されたセルを選択しても一番上に表示されますが……。 先ほどのコードと同じ場所に↓を入れて見てください。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) On Error GoTo ErrTrap If Target.Name.Name Like "項目*" Then ActiveWindow.ScrollRow = ActiveCell.Row End If ErrTrap: On Error GoTo 0 End Sub
その他の回答 (3)
- mt2008
- ベストアンサー率52% (885/1701)
ANo.1です。 駄目でしたか……。以下の補足願います。 1.そのハイパーリンクはどの様に設定しましたか。 2.同じシートの中でのリンクですか。
補足
1.ボタンは図形の中にある[角丸四角形]で作り、テキスト追加で文字を入力しています。 それぞれのセルの名前ボックスに名前を定義しています。 (例:A20→項目1、A35→項目2) そして図形のボタンを右クリックして、ハイパーリンクを選択し、リンク先を[このドキュメント内]にし、 定義された名前を選択してOKしました。 2.同じシート内です。
- mt2008
- ベストアンサー率52% (885/1701)
- mt2008
- ベストアンサー率52% (885/1701)
そのシートに Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink) ActiveWindow.ScrollRow = ActiveCell.Row End Sub と、入れておけばリンクされた行が一番上に表示されます。
補足
早速ありがとうございます。 ですが・・・・・初心者ですので、その式は何処から入力するのでしょうか?
お礼
ありがとうございます。 コードを入力しても上手くいかなかったので、[スクロール]というヒントをもとに発想転換しました。 せるの範囲選択をして、それに名前の定義を付けて、ハイパーリンクを設定したところ 上手く先頭になってくれたのでこれでいこうかと思っています。 これが解決策だとは思っていませんが、とりあえず様子をみてみたいと思います。 今までありがとうございました。