2016-06-23 9 views
0

これまでのところ、ワイルドカードをファイル名(どのように使用するのか知っています)で使用する方法と仕事の援助方法が多数見つかりましたが、フォルダパスで使用するにはほとんど問題はありません。これは私のコードです:VBAフォルダ名にワイルドカードを使用する

myFolder = Cells(k, 7) 

    Archive_Path_0 = "C:\New Folder\" & myFolder & "* \" 'wildcard in folder name 

    myFileName = Cells(r, 8) 

    CountName = Len(myFileName) 

    Windows(myFileName).Activate 

    ActiveWorkbook.SaveAs Archive_Path_0 & Left(myFileName, CountName - 4) & " AFTER.xls" 

myFolderは、Excelのスプレッドシートとその定数から得ることができる変数です。 myFileNamemyFolderという場所に保存したいのですが、他の人が変更または変更できるフルネームのちょうど部分的な名前です。これを解決するアイデア?

+0

End Subのは、 "' myFolder'が可変で...、その定数" に変更一部である:' myFolder'ま​​たは 'myFileName'?あなたはパスがどのように見えるかの例を挙げることができますか? – Tim

+0

ワイルドカードはファイル検索でのみ使用されます。 –

+0

'myFolder =" ABCD "'フォルダーのフルネームは 'ABCD - ブローカー名です。( '、'、 '、'、 ')は、 AND ID'フォルダ名の最初の4文字を知っているだけで、このフォルダにファイルを保存したい –

答えて

0

これは私を助けてくれるコードです!

Sub ShowFolderList() 
Dim fs, f, f1, s, sf As Object 
folderspec = "C:\windows\" 
Set fs = CreateObject("Scripting.FileSystemObject") 
Set f = fs.GetFolder(folderspec) 
Set sf = f.SubFolders 
NextRow = 2 
i = 2 
Do While Cells(i, 2) <> "" 
    Fund = Cells(i, 2) 
    For Each f1 In sf 
     s = s & f1.Name 
     If Left(s, 4) = Fund Then 
      Cells(i, 3).Value = s 
     End If 
     s = "" 
     NextRow = NextRow + 1 
    Next f1 
    i = i + 1 
    NextRow = 2 
Loop 
MsgBox ("Done!") 

私はあなたが何を意味従わない

関連する問題