• 締切済み

VBA テキストファイルを読み取り専用で開くには

VBAでテキストファイルをworkbookと同じように 読み取り専用で開く方法はないでしょうか? 開く直前にSetAttrで設定するとほかのユーザーが書き込みできなくなって しまいます。 24時間ずっと2分に一度くらい自動で書き込みが行われる テキストファイルを読み取り専用で開き、書き込み側も エラーを出すことなく書き込み続けることは可能でしょうか。 WorkBook.Openの読み取り専用のスイッチをTRUEとしたいところですが 行数がWorkBOOKの限界を超える場合もありますのでできません。 よろしくお願い致します。

みんなの回答

回答No.2

複写してから、読んではどうですか? たとえば、a_file.CSVを読み込み専用で読みたいとします。 手順としては以下のようになります。 1.a_fileCSVをa_file.csv_tempという名前に複写 2.a_file.csv_temp を読み込みバッファへ格納 3.a_file.csv_tempのクローズ 4.a_file.csv_tempを削除 5.バッファに格納された内容をworkbookに展開 とやると、元のファイルa_fileCSVには、排他がかからないようになると思いますけど!

koji0034
質問者

お礼

回答ありがとうございます。 複写とcopyメソッドでおこなうと copy時は書き込み不可となります。 ファイルが重いためコピーに時間がかかり その間書き込み不可となりエラーになります。

noname#187541
noname#187541
回答No.1

こんばんは。 Openステートメントを使って、入力モードで開くとか?

koji0034
質問者

お礼

回答ありがとうございます。 inputで開くとoutputでは書き込みできません。

関連するQ&A

専門家に質問してみよう