excel VBA フォルダ内のサブフォルダを検索してハイパーリンクを貼る方法を知りたいです。
フォルダ内のフォルダ群の名前を部分一致で検索して抽出されたもののハイパーリンクをシートに一覧表示したいです。
〇状況
対象フォルダ="C:\Users\Desktop\test\"
上記「test」フォルダ内にフォルダ群
「A類」「B類」「C類」...というフォルダがあり、
ABC...各フォルダの中にそれぞれ「管理番号_商品名_パーツ名」で名付けられたフォルダ群があったとします。
このパーツ名を検索ワードとしてtest内のABC...全てのサブフォルダ内の該当フォルダを検索して、そのハイパーリンクを作成したいです。
良い方法があれば教えて頂けますと有り難いです。
下記に作ってみたもののうまく動作しなかったものを貼ります。
(VBA初心者の為、わけわからないコードになっているかと思いますが一応状況参考に。)
Range("I11").Value に検索ワードを入れる設定です。
--------------------------------------------
Sub folderloopパーツ検索()
Dim ws As Worksheet
Dim pt As String
Set ws = ActiveSheet
pt = "C:\Users\Desktop\test\"
Call フォルダリンク一覧取得(pt, ws, t_row)
End Sub
----------
Sub フォルダリンク一覧取得(pt As String, ws As Worksheet, t_row As Long)
Dim FSO As Object
Dim fd As String
Dim s_fd As Object
fd = Dir(pt & "\", vbDirectory)
Do Until fd = ""
Set FSO = CreateObject(Scripting.FileSystemObject)
For Each s_fd In FSO.GetFolder(pt).SubFolders
Dim xFld As String
xFld = Dir("*" & Range("I11").Value & "*", vbDirectory)
Do Until xFld = ""
ActiveSheet.Hyperlinks.Add Anchor:=Range("AC2").Offset(i), Address:=fd & xFld, TextToDisplay:=xFld
i = i + 1
xFld = Dir
Loop
Next s_fd
Set FSO = Nothing
Loop
End Sub
------------
上記コードの不具合部分のご指摘でも、全く別のうまいやり方でも何でも歓迎です。
何かアドバイスや回答を頂戴出来ればと思います。
何卒よろしくお願い申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Excel(エクセル) VBA フォルダ見える化のコードについて 2 2023/06/19 15:04
- Visual Basic(VBA) あるフォルダーのファイルを違う親フォルダーのサブフォルダーに移したい 11 2023/02/15 19:00
- Visual Basic(VBA) このVBAでExcelアプリケーションを作成は必要ですか? 3 2023/07/19 21:13
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Android VBA、フォルダのパスに環境文字 ㉑ があり、VBAが機能しません。 2 2022/07/27 09:16
- Visual Basic(VBA) InputBoxでキャンセルボタンを押したらファイル自体を閉じたい 3 2022/07/23 17:52
- Visual Basic(VBA) VBAが止まります。 2 2022/09/02 14:02
- Visual Basic(VBA) Excel VBAについて、 フォルダ内のファイルを全て開きたい場合、 FSOを使えば、Dirは使わ 1 2023/01/27 13:18
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
撮影後、SDカードに作成される...
-
ディレクトリ数のみを取得する...
-
お気に入りフォルダの名前はど...
-
大量のフォルダへのハイパーリ...
-
エクスプローラ、「上へ」でフ...
-
AccessVBAで特定の文字を含むフ...
-
フォルダのサムネイル画像
-
謎のフォルダ「ドネュメント」
-
ファイル検索結果をフォルダパ...
-
excel VBA 特定の文字列を含む...
-
excel VBA フォルダ内のサブフ...
-
C:\\Documents and Settingsが...
-
メールフォルダの折りたたみ・...
-
お気に入りに追加したのに表示...
-
Thunderbird 振り分けされなく...
-
NetBTエラーとbrowserエラーが多発
-
Tera Termでのコマンド流し込み...
-
エクセルで定期的(30分おき)...
-
icaclsの読み方
-
【Ciscoコマンド】interface As...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
フォルダのサムネイル画像
-
撮影後、SDカードに作成される...
-
元のフォルダに矢印キーで帰りたい
-
お気に入りフォルダの名前はど...
-
大量のフォルダへのハイパーリ...
-
C:\\Documents and Settingsが...
-
excel VBA 部分一致の名前をパ...
-
フォルダについて。
-
OUTLOOK連絡先をグループ分けす...
-
エクセルVBAで相対パスでフォル...
-
excel VBA 特定の文字列を含む...
-
バッチファイルの親フォルダを...
-
【マクロ】フォルダを2つのモ...
-
ディレクトリ数のみを取得する...
-
Explorerのフォルダウインドウ...
-
謎のフォルダ「ドネュメント」
-
I386フォルダの役目とは
-
お気に入りに追加したのに表示...
-
AccessVBAで特定の文字を含むフ...
-
PCで、FF11のマクロデータを移...
おすすめ情報