VBAマクロの書き換えをお願いいたします。もしそのまま使える完全な回答をしていただいた最初の回答者の方に、お気持ちですが500ポイント差し上げます。


以下が現行のコードです。エクセル2007でApplication.FileSearchでエラーが発生してしまっています。エクセル2007に対応したコードに書き換えていただけますと幸いです。

Public Function findXlsFile(ByVal pXlFName As String) As String

Dim myFs As FileSearch
Dim i As Long
Dim flgFind As Boolean

Set myFs = Application.FileSearch
With myFs
.NewSearch
.LookIn = pubBookPath
.FileType = msoFileTypeAllFiles
.Filename = pXlFName
.SearchSubFolders = False
If .Execute(SortBy:=msoSortByFileName) > 0 Then
For i = 1 To .FoundFiles.Count
flgFind = refineData(.FoundFiles(i))
Next
Else
findXlsFile = ""
End If
End With
Set myFs = Nothing
End Function

是非お力添えを頂ければと思います。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2011/12/21 16:44:28
  • 終了:2011/12/21 17:29:32

ベストアンサー

id:kodairabase No.1

kodairabase回答回数661ベストアンサー獲得回数802011/12/21 17:01:05

ポイント750pt
Public Function findXlsFile(ByVal pXlFName As String) As String
    Dim fname As String
    Dim flgFind As Boolean

    fname = Dir(pubBookPath & "\" & pXlFName)
    Do While fname <> ""
        flgFind = refineData(fname)
        fname = Dir()
    Loop
End Function
id:tororosoba

korodairabaseさん、迅速なご回答、有難うございました!大変に助かりました!

2011/12/21 17:28:32

その他の回答(1件)

id:kodairabase No.1

kodairabase回答回数661ベストアンサー獲得回数802011/12/21 17:01:05ここでベストアンサー

ポイント750pt
Public Function findXlsFile(ByVal pXlFName As String) As String
    Dim fname As String
    Dim flgFind As Boolean

    fname = Dir(pubBookPath & "\" & pXlFName)
    Do While fname <> ""
        flgFind = refineData(fname)
        fname = Dir()
    Loop
End Function
id:tororosoba

korodairabaseさん、迅速なご回答、有難うございました!大変に助かりました!

2011/12/21 17:28:32
id:taknt No.2

きゃづみぃ回答回数13539ベストアンサー獲得回数11982011/12/21 17:08:19

ポイント250pt

http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_130.html

こちらのプログラムを利用されては いかがでしょうか?

id:tororosoba

アドバイス、ありがとうございました!

2011/12/21 17:28:46

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません