|
ウッシ さん,こんにちは。
>FileSearch自体が検索ワードがファイル名の一部にヒットするものを全て検索し処理する
>という用途に使用するもの
はじめて知りました! お恥ずかしい限りです。
Windows自体の検索機能では完全一致ができたので VBA においてもできると思い, FileName プロパティの定義の方法にひょっとしたらコツがあるのでは?と思い質問してみたのですが,完全一致は無理なようですね。
ただ,FileSearch の本来?の用途を学べたことで質問した甲斐がありました。
>.FoundFiles をループしてDirでファイル名を取得して>「InputFile = "aaa.prn"」に一致したファイルをオープン
FileOpen をそのまま利用しようと思ったのですが,アドバイスいただいた↑方法で作ってみました。(動作確認はしました)
こちらの方がスッキリしているのでこちらを利用していきたいと思いますます。
Sub FileOpen3()
'------------------------------------------------------
Dim InputFile As String
Dim fileCounter As Long
Dim i As Long
'------------------------------------------------------
fileCounter = 0
InputFile = "aaa.prn"
With Application.FileSearch
.NewSearch
.LookIn = ThisWorkbook.Path
.SearchSubFolders = False
.Filename = InputFile
.MatchTextExactly = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count
If InputFile = Dir(.FoundFiles(i)) Then
fileCounter = fileCounter + 1
Exit For
End If
Next i
End If
MsgBox InputFile & "は" & fileCounter & "個あります"
End With
End Sub
返事が遅くなりましたが,大変ありがとうございました。
|
|