Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10794 / 13646 ツリー ←次へ | 前へ→

【19822】特定の名前の入ったフォルダを検索したい まろん 04/11/17(水) 16:14 質問[未読]
【19849】Re:特定の名前の入ったフォルダを検索したい かみちゃん 04/11/17(水) 22:45 回答[未読]
【19862】Re:特定の名前の入ったフォルダを検索したい まろん 04/11/18(木) 9:31 質問[未読]
【19875】Re:特定の名前の入ったフォルダを検索したい かみちゃん 04/11/18(木) 12:39 回答[未読]

【19822】特定の名前の入ったフォルダを検索したい
質問  まろん  - 04/11/17(水) 16:14 -

引用なし
パスワード
   お忙しい中失礼します

特定の名前が入ったフォルダを検索して弄くりたいのですが手段ありませんか?

【19849】Re:特定の名前の入ったフォルダを検索し...
回答  かみちゃん  - 04/11/17(水) 22:45 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>特定の名前が入ったフォルダを検索して弄くりたいのですが手段ありませんか?

以下を参照して、
http://www.atmarkit.co.jp/fwin2k/win2ktips/310filelist/filelist.html
少し変えたマクロですが、このような感じでしょうか?

検索開始フォルダによっては、検索に時間がかかりますので、注意してください。

Option Explicit

'検索したいフォルダ名の変数
Dim strFind As String

Sub Macro1()
 Dim strPath As String
  
 strFind = InputBox("検索したいフォルダ名を入力してください。", "フォルダ名")
 '検索開始フォルダ名 初期値は、マクロがあるフォルダ
 strPath = InputBox("調べたいフォルダを絶対パスで入力してください。", "ファイル一覧", ThisWorkbook.Path & "\")
 FileDisp strPath
End Sub

Function FileDisp(strPath As String)
 Dim objFs As Object
 Dim objFld As Object
 Dim objSub As Object

 Set objFs = CreateObject("Scripting.FileSystemObject")
 Set objFld = objFs.GetFolder(strPath)
 If InStr(objFld.Name, strFind) <> 0 Then
  'フォルダ名が部分一致した場合の処理
  MsgBox objFld.Name
 End If
 For Each objSub In objFld.SubFolders
  FileDisp objSub.Path
 Next
End Function

【19862】Re:特定の名前の入ったフォルダを検索し...
質問  まろん  - 04/11/18(木) 9:31 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>>特定の名前が入ったフォルダを検索して弄くりたいのですが手段ありませんか?
>
>以下を参照して、
>http://www.atmarkit.co.jp/fwin2k/win2ktips/310filelist/filelist.html
>少し変えたマクロですが、このような感じでしょうか?
>
>検索開始フォルダによっては、検索に時間がかかりますので、注意してください。
>
>Option Explicit
>
>'検索したいフォルダ名の変数
>Dim strFind As String
>
>Sub Macro1()
> Dim strPath As String
>  
> strFind = InputBox("検索したいフォルダ名を入力してください。", "フォルダ名")
> '検索開始フォルダ名 初期値は、マクロがあるフォルダ
> strPath = InputBox("調べたいフォルダを絶対パスで入力してください。", "ファイル一覧", ThisWorkbook.Path & "\")
> FileDisp strPath
>End Sub
>
>Function FileDisp(strPath As String)
> Dim objFs As Object
> Dim objFld As Object
> Dim objSub As Object
>
> Set objFs = CreateObject("Scripting.FileSystemObject")
> Set objFld = objFs.GetFolder(strPath)
> If InStr(objFld.Name, strFind) <> 0 Then
>  'フォルダ名が部分一致した場合の処理
>  MsgBox objFld.Name
> End If
> For Each objSub In objFld.SubFolders
>  FileDisp objSub.Path
> Next
>End Function
ありがとうございます。まろんです。
これを応用してフォルダの名前の変更をしたいのですが、単純に
NAME〜AS…やReplaceを用いればいいのでしょうか?

色々質問してすいません。

【19875】Re:特定の名前の入ったフォルダを検索し...
回答  かみちゃん  - 04/11/18(木) 12:39 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>これを応用してフォルダの名前の変更をしたいのですが、単純に
>NAME〜AS…やReplaceを用いればいいのでしょうか?

最近同様の質問が出ていますね。解決したかどうかは、ハッキリわからないのですが。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=19702;id=excel

以下のURLは、AccessのVBAのTipsですが、Excelでも使えると思います。
http://www.tsware.jp/tips/tips_304.htm

参考にしてください。

※引用は必要最小限のものにしていただければ、と思います。

10794 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free