エクセルのファイルを開く前に、そのファイルが第三者によって開かれているかどうか確認し、開かれていない場合はそのファイルを開き、開かれていれば「使用中」のメッセージを出すようにしたいのですが。その方法を教えてください。
宜しくお願いします。
https://www.petitmonte.com/bbs/answers?question_id=1342
こちら
るるとん@Kさん、早速ありがとうございます。
しかしながら、「普通に、FileOpenの戻り値で確認できますね・・・」とありますが、何分にも初心者なものでして。もう少し(というか、深く)掘り下げて教えていただきたいのですが...
宜しくお願いします。
DelphiのエディタにFileOpenと入力しそこにカーソルを合わせF1キーをポチっとな
ヘルプご覧下さい
はっきりいって、よく分かりません。
PDAからの投稿なのでお許しください。
FILEの書き込み、読み出し属性を指定して、オープンされてるとエラーが発生しませんか?
例外で捕まえて、使用中ですってのはどうでしょう?
るるとん@さん、バニラさんありがとうございます。
FileHandle := FileOpen('c:\test.xls',fmShareExclusive);
if FileHandle > 0 then.......
を、使って今使用中かどうか判定はできることができました。
ただ解除する方法が、わかりません。
このままだと、1回目はOK(ファイルのロック)ですが2回目からはロックされたままとなります。
ロックを解除する方法、教えていただけませんでしょうか?
FileOpenで開いたら閉じないといけませんよ。
たとえ読み込みも書き込みもしていないとしても。
にしのさんありがとうございます。
fileclose (fileHandle) ;
で、できました。
みなさん、こんな初心者に快くアドバイスをいただきありがとうございました。
ツイート | ![]() |