Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


58515 / 76732 ←次へ | 前へ→

【22943】Re:ハイパーリンクについて
発言  G-Luck  - 05/3/8(火) 13:54 -

引用なし
パスワード
   ▼ギン さん:
ハイパーリンクでは、#はブックマークの記号らしく特別な意味があるようです。
それで、直接的回避策は無いのではないかと思います。

そこで、ハイパーリンクの目的がファイルを開くことであるなら、
ハイパーリンクは、シングルクリックですが
ダブルクリックイベントを利用して、下記コードのようにしてはどうですか?
ブックマークや、他の機能を利用するなら、それに合わせてコードを書き換える必要があります。

'以下コード
Private Sub Workbook_SheetBeforeDoubleClick _
  (ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  Call myHyperLink(Target)
End Sub

Public Sub myHyperLink(Target As Range)
  
  Const myMessage As String = "ファイルが開けませんでした"
  Dim LinkRange As Range
  Dim rg As Range
  Dim Fn As String
  
  Set LinkRange = ThisWorkbook.Worksheets("Sheet1").Range("A1")
'リンク設定をしたいセル範囲です。適切に指定してください。

  On Error Resume Next
    Set rg = Intersect(Target, LinkRange)
    If rg Is Nothing Then Exit Sub
    Workbooks.Open Filename:=rg.Value
    If Err <> 0 Then
      MsgBox myMessage
    End If
  On Error GoTo 0
End Sub

あるいは、ラベルやテキストボックスを貼り付け、クリックイベントで処理をするとか

4 hits

【22925】ハイパーリンクについて ギン 05/3/7(月) 18:56 質問
【22943】Re:ハイパーリンクについて G-Luck 05/3/8(火) 13:54 発言
【22990】Re:ハイパーリンクについて ギン 05/3/9(水) 15:53 お礼

58515 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free