[[20211221144253]] 『ハイパーリンク先のフォルダをワイルドカードにし』(わん) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ハイパーリンク先のフォルダをワイルドカードにしたい』(わん)

はじめまして。

ハイパーリンク先のフォルダをワイルドカードにしたいので方法を教えて欲しいです。
以下のようなことを行う予定です。

セルA1の文字列「試験」にファイルへのハイパーリンク(相対パス)を設定します。
(ハイパーリンク先の階層は、「XYZ\あああ\abc.pdf」とします。)

この時に、フォルダ「あああ」が別のフォルダ名に変わったとしてもハイパーリンクが有効なままになるようにしたいです。
(「XYZ\いいい\abc.pdf」や「XYZ\わをん\abc.pdf」等、ファイル「abc.pdf」が入っているフォルダ名は予測できません)

実現方法は関数でもVBAでも構いません。
宜しくお願い致します。

< 使用 Excel:Office365、使用 OS:Windows10 >


ダミーのハイパーリンクを作成して、シートモジュールにWorksheet_FollowHyperlinkで処理することはできそうに思います。
(きまぐれおじさん) 2021/12/21(火) 15:25

断言しませんが、エクセルから【何という名前に変えられか】を掴む術がないので、ハイパーリンクに拘りたいということであれば、無理じゃないですかね。
ただ、「XYZ」の配下フォルダを巡回して「abc.pdf」が見つかったら開くといくことなら、マクロで実現可能だと思いますのでFileSystemObjectなどを研究してみてはどうでしょうか。
 「XYZ」の「SubFolders」にある「Files」のうち「Name」が"abc.pdf"だったら開けばいいんですよね?

(もこな2) 2021/12/21(火) 16:01


対象pdfと同名のファイルが無ければ、
ファイルパスを取得して、
ハイパーリンクの参照パスに反映してあげればできるのでは。
(kjnkr) 2021/12/21(火) 16:35

きまぐれおじさんさん
ありがとうございます。
確かにできそうですね。VBAはまだまだ勉強中ですが、調べてみます。

もこな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


別の方法もあるかもしれません。
HYPERLINK関数を使って、
リンク先のフォルダを特定セルに持つようにすれば、
一か所そこだけ修正すればよいのでは?
余り複雑なものにしないほうが良いのではないかと思います。
# "abc.pdf"は元のフォルダに残したままで追加したい、なんていうことも
# ニーズとしてはありそうですね。そうなると検索も面倒になります。

(γ) 2021/12/21(火) 23:42


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.