| 
    
     |  | >これは、VBAでDir関数に260(Excel97は、261)バイト以上のパス名を指定すると「ファイルが見つかりません」のエラーになるケースのことでしょうか? >いつも、エラーになる場合があることを認識しながら、簡単なので、Dir関数を使
 >っていますので、それ以外に「最悪」な理由があれば、教えてください。
 
 無効な(存在しない)UNCを指定したときもErrorになりますね。
 
 あと、260Byteからわかるように、VBA.FileSystem Classは
 Unicodeを一度ANSIに変換してから処理してます。
 したがって、PathにUnicode拡張文字が含まれる場合Errorになります。
 (もっとも、PathにUnicode拡張文字をつけること自体問題ですが・・・)
 
 また、これは純粋に使い方の問題になりますが、
 第2引数のAttributesのことです。
 既定では、標準の属性しかされませんのでDirでSampleを書くなら
 そのことくらいは注意しておいた方がいいとおもいます。
 
 あと、Dir関数を使っていると、もう一度Dir関数をたたいてやらないと
 FileHandleがCloseされないという問題も存在します。
 
 以上、VBA.FileSystem Class は問題山積みですので、
 わたしは一切使用しません。
 
 |  |