[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『「ハイパーリンクの編集」ダイアログボックスのアドレス表示について』(ドクターなかみつ)
Exelワークシートで、同じファイル内のワークシートまたは別のファイルの ワークシートに対してハイパーリンクを張っています。
ハイパーリンクを設定してあるセルを選択し、右クリックメニューから 「ハイパーリンクの編集」を開くと、ボックス下のほうに「アドレス(E):」で リンク先のファイルパスが表示される場合と、表示される場合があるようです。
ちなみに後者の場合は
MsgBox ActiveCell.Hyperlinks(1).Address
をすると、何も表示されません(前者の場合はリンク先ファイル名を表示)。
これって、どういうことなのですか?マクロを使ってハイパーリンクの内容確認を したいのですが・・・。
Windows 2000 Excel 2003
そのアドレスが表示されないセルをクリックするとどうなりますか? どこへリンクされているのですか? また、その状態を再現できる方法がありますか? (momo)
>そのアドレスが表示されないセルをクリックするとどうなりますか? >どこへリンクされているのですか?
ちゃんと意図した通りのリンク先に飛びます。 リンク先は同じファイル内の別シートです。
>また、その状態を再現できる方法がありますか?
下記の手順で再現できました。
1. まず、My Documentに空白のBook1とBook2を保存
2. Book1のSheet1、セルA1に下記の手順でハイパーリンクを挿入 a. セルを選択し右クリックからハイパーリンク b. 「ハイパーリンクの挿入」ダイアログボックス左端の「リンク先」で 「このドキュメント内」を選択し、Sheet2を選択してOK
3. 次に、Book1のSheet1、セルA2に下記の手順でハイパーリンクを挿入 A. セルを選択し右クリックからハイパーリンク B.「ハイパーリンクの挿入」ダイアログボックス左端の「リンク先」で 「ファイル、Webページ」を選択し、My Document内のBook2.xlsを選択 C.「ブックマーク」をクリックし、「ドキュメント内の場所の指定」から Sheet2を選択しOK
4. セルA1で右クリック→「ハイパーリンクの編集」を開くと、ボックス下に 「アドレス(E):」の表示がない。前述のマクロでも空白表示。
5. セルA2で右クリック→「ハイパーリンクの編集」を開くと、ボックス下に 「アドレス(E):」でリンク先のファイル名(Book1.xls#Sheet2!A1)が表示 される。前述マクロではBook2.xlsと表示される。
※ セルA1、A2とも、ハイパーリンクの機能自体は正常に動作します。
ActiveCell.Hyperlinks(1).Address 以外のマクロでも、要はA1の リンク先ファイル名を確認できればOKです。
(ドクターなかみつ)
なるほど、そういう事でしたか
外部ファイルなどへのアドレスは MsgBox ActiveCell.Hyperlinks(1).Address ですが
ブック内のオブジェクトへのリンクは MsgBox ActiveCell.Hyperlinks(1).SubAddress のようにサブアドレスで取得できます。
両方を繋げるなら、こんな感じで取得できます。 With ActiveCell.Hyperlinks(1) MsgBox .Address & .SubAddress End With
こういう事を調べる時にはオブジェクトブラウザでプロパティを調べるか Set Obj = ActiveCell.Hyperlinks(1) とでもしておいてローカルウインドウで変数の中を良く見ると どこにどのような値があるのか解りやすいと思います。 (momo)
なるほど、納得しました。
言い換えれば、 MsgBox ActiveCell.Hyperlinks(1).Address で空白表示になる、イコール リンク先は同じファイル内にある、 ということですよね?
.SubAddressにてリンク先のシート名とセルを取得できることも 確認しました。
大いに参考にさせていただきます。ありがとうございました。 (ドクターなかみつ)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.