2017-02-03 27 views
0

ネットワークフォルダ内のすべてのExcelスプレッドシートをリストするマクロを作成しようとしていますが、スプレッドシートが開いている間にExcelが作成する一時ファイルは無視されます(〜$ filename.xlsx)下のコードは素晴らしいですが、これらの一時ファイルも取得します。特定のファイルタイプを除外するためのVBA構文

If (objFile) Like ("*.xlsx") Then 
      Do something here 
     End If 
     Next objFile 

私はIf Notステートメントを使用しようとしましたが、動作させるのに問題があります。私はVBAの初心者です。私の構文は単純にオフになっている可能性があります。一時的な〜$ *。xlsxファイルを無視して、すべての.xlsxファイルを指定する方法はありますか?

+0

UPDATE:問題のいくつかは見ていないExcelで同棲して判明します一時ファイルの先頭にある "〜"。代わりに* $で始まり、今働いているファイルを除外して "フィルタ"を作ることができました。お返事ありがとうございました! –

答えて

0

ちょうどあなたのLike文で~で始まる文字列を除外する:

If (objFile) Like ("[!~]*.xlsx") Then 
    'Do something here 
End If 
0

私は最も簡単な方法は、ちょうどIfステートメントに余分な句を追加することであると思う:

If objFile Like "*.xlsx" And Left(objFile, 2) <> "~$" Then 
     Do something here 
    End If 
Next objFile 
0

あなたがこれを行うことができます以下のコードを使用してください:

私はコレクションにファイル名を格納しますが、明らかに、あなたは配列に格納したり、ニーズに合ったものは何でも最高でした。..

よろしく、 TheSilkCode

関連する問題