[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ハイパーリンクからFAXと画像のビューアへ』(ムラ)
ハイパーリンクに関する質問です。
リンク先に画像ファイルを設定しているのですが、
”Internet Explorer”にて画像が表示されます。
どうにかして”FAXと画像のビューア”で表示させたいのですが、
何か方法はありますか?
よろしくお願いします。
通常のハイパーリンクの設定では出来ないかと思います。 VBAでIE表示を消して強制的にビューアーで開く方法を使います。
ハイパーリンクは普通に設定しておいて ThisWorkbookモジュールに以下のようにしてみてはどうでしょうか? (momo)
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
Const TgtExp As String = "jpg,gif,tif" '対象拡張子(半角小文字) Const VPath As String = _ "rundll32.exe C:\WINDOWS\System32\shimgvw.dll,ImageView_Fullscreen" Dim chkExp As Variant, ExpBuf As String, c As Variant
ExpBuf = StrConv(StrReverse(Split(StrReverse(Target.Address), ".")(0)), _ vbNarrow + vbLowerCase) chkExp = Split(TgtExp, ",") For Each c In chkExp If c = ExpBuf Then With CreateObject("Shell.Application").Windows With .Item(.Count - 1) If TypeName(.Document) = "HTMLDocument" Then If Mid$(.Document.URL, 8) = Target.Address Then .Quit End If End With End With Shell VPath & " " & Target.Address, vbNormalFocus Exit For End If Next c End Sub
回答頂いて申し訳ありませんが、
ThisWorkbookmoduleはどうやって開けばよいのですか?
調べてみたのですがわかりません。
2003使用です。
初歩的な質問で申し訳ありませんがよろしくお願いします。
エクセルを起動した状態で Alt + F11 でVisualBasicEditerが起動します。
そして ctrl + R を押すとプロジェクトエクスプローラーが起動します。
そこにシートモジュールの下にThisWorkbookモジュールがあるはずですので ダブルクリックするとコードウインドウが表示されます。
そこに転記してください。
というかVBAが前提ではなかったのですね。 説明が足りなくてすみません。
補足で、コード内で画像ファイルの拡張子を >Const TgtExp As String = "jpg,gif,tif" '対象拡張子(半角小文字) と、jpg,gif,tif の3つだけ設定していますので 対象の拡張子を設定してください。
(momo)
おかげさまでビューアで表示できました。
丁寧に教えていただきありがとうございます。
(ムラ)
If TypeName(.Document) = "HTMLDocument" Then
の部分でエラーが出てしまいつかえませんでした。
どなたかご存じの方いらっしゃいましたら、
おしえていただけますか。よろしくお願いします。
元のコードは私の回答ですが・・・ IEのバージョンかShellの動作に関わるんだと思いますが Win7の環境に無いのでわかりません。 すみません。 (momo)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.