「一気に最後まで読んだ」本、教えて下さい!

ExcelVBAの勉強を始めて間もない者です。
Office2000のExcelでマクロを作成しています。

テキストストリームオブジェクトを作成してファイルを開き、
ファイルの内容をセルに展開するプログラムを書いているのですが、
開こうとしているファイルが他のプロセスで開かれているかどうかを調べる方法はありませんか?

Openステートメントを使用すればロックをかけることができるので、
エラーを発生させることができるみたいなのですが、
テキストストリームオブジェクトを使用してファイルを開いている場合に
開くファイルが他のプロセスで使用してるか調べる方法が知りたいです。

説明がわかりにくいとは思いますがよろしくお願いします。

A 回答 (2件)

最近、よく似た質問がありました。


http://okwave.jp/qa3139073.html
でどうでしょう。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

リンク先を拝見させていただきました。
私の説明が下手でうまく伝わらなかったみたいで申し訳ないです。

プログラムでファイルを扱うために「ファイルを開く」際に
開く方法がテキストストリームオブジェクトなるものを作成して開く方法と
ご提示頂いたOpenステートメントなるものを使用して開く方法の
2つがあるらしいのです(勉強中の身の為間違っているかもしれませんが)

さらに、ファイルの内容を読み込む際に、Openステートメントで開いた場合よりも
テキストストリームオブジェクトを作成して開いた方が速い。
という記事を見かけました。

今回、勉強とはいえ扱う読み込みデータが多い為、
処理が速い方(テキストストリームオブジェクト)を使ってプログラミングをしました。

ですが、他のプロセスですでにファイルが開かれていても
読み込みモードで開いた場合はエラーは発生せずに開いてしまいます。

そこで、テキストストリームオブジェクトを作成してファイルを開く方法でも
Openステートメントを使用して開く際にロックをかけるような処理はないか?
または、そのファイルが他のプロセスで開かれているかどうかを調べるようなメソッドなり関数なりプロパティなりがないのか?
ということを知りたいのです。

ないならないでOpenステートメントを使ったプログラムに変更するのですが、
自分で探しただけでは、「きっと探せないだけであるはず!」と
諦めがつかなくて。。。

やっぱり無いのでしょうか。。。

回答本当にありがとうございました。
説明下手で申し訳ありませんでした。

お礼日時:2007/07/15 11:21

ExcelVBAのことでこちらで回答を得られないときは、


デジタルライフ > ソフトウェア > Office系ソフト
のほうで再質問してみたほうがいいと思います。
VBAの知識のある方が大勢いますよ。
回答でなくてすいません。
    • good
    • 0
この回答へのお礼

再回答ありがとうございます。
ここでの質問は締め切って教えて頂いたカテゴリで再度質問させて頂きたいと思います。

お礼日時:2007/07/18 23:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報