[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『ハイパーリンク先のフォルダをワイルドカードにしたい』(わん)
はじめまして。
ハイパーリンク先のフォルダをワイルドカードにしたいので方法を教えて欲しいです。
以下のようなことを行う予定です。
セルA1の文字列「試験」にファイルへのハイパーリンク(相対パス)を設定します。
(ハイパーリンク先の階層は、「XYZ\あああ\abc.pdf」とします。)
この時に、フォルダ「あああ」が別のフォルダ名に変わったとしてもハイパーリンクが有効なままになるようにしたいです。
(「XYZ\いいい\abc.pdf」や「XYZ\わをん\abc.pdf」等、ファイル「abc.pdf」が入っているフォルダ名は予測できません)
実現方法は関数でもVBAでも構いません。
宜しくお願い致します。
< 使用 Excel:Office365、使用 OS:Windows10 >
「XYZ」の「SubFolders」にある「Files」のうち「Name」が"abc.pdf"だったら開けばいいんですよね?
(もこな2) 2021/12/21(火) 16:01
もこな2さん
ありがとうございます。
>「XYZ」の「SubFolders」にある「Files」のうち「Name」が"abc.pdf"だったら開けばいいんですよね?
その通りです。分かりやすくして頂いてありがとうございます。ハイパーリンクに越したことはないと考えていますが、任意のタイミングで開ければいいのでボタンも検討してみます。
kjnkrさん
ありがとうございます。
確かにファイルパスを取得まで行けそうですね。それをハイパーリンクの参照パスに反映する方法を調べてみます。
(わん) 2021/12/21(火) 17:28
>それをハイパーリンクの参照パスに反映する方法を調べてみます。
Addressで指定するだけですよ。
Private Sub Workbook_Open() Dim 対象フォルダ As Object Set 対象フォルダ = CreateObject("Scripting.FileSystemObject").GetFolder(".\XYZ\") Dim フォルダ As Object, ファイル As Object
For Each フォルダ In 対象フォルダ.SubFolders For Each ファイル In フォルダ.Files If ファイル.Name = "abc.pdf" Then With Worksheets(1) .Hyperlinks.Add Anchor:=.Range("A1"), Address:=ファイル.Path End With
Exit Sub End If Next ファイル Next フォルダ End Sub
(もこな2) 2021/12/21(火) 18:54
(γ) 2021/12/21(火) 23:42
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.