[テキストファイルは既に開いている・・]メッセージが表示されるが?

Question 72.2   Previous Next
はじめまして。ど素人の分際で質問させていただきます。
現在、測定データ(テキストファイル)を新しいブックとして開き、平均値や最小値を判定するというマクロを作成しています。 たとえば、「test.txt」というファイルを開いて判定された値を見て、明らかに異常がある場合、もう一度、測定し直してテキストデータを同じ 「test.txt」というファイル名で上書き保存します。

異常のあった test というブックを残したままで、もう一度マクロを実行させると、「test.txt はすでに開かれています。2重に開くと・・・破棄しますか?」と聞かれます。
「はい」を選択してマクロを実行すると平均値等は異常のまま変わりません。

シート内のセルはマクロを実行するごとにクリアするようにしているのですが、上書きが反映されていないのか、プログラム的な問題なのか分かりません。なぜでしょうか?
教えていただければ幸いです。 分かりにくい質問でしたらすみません。
よろしくお願いします。 (Excel 2000 & Win 2000)
Answer   Copyright (C) 2005.3.16 永井善王
そうです、ちょっと分かりにくいですね。 なぜかと言うと、手で操作する部分と、マクロで実行する部分、マクロが保存されているブックが判然としません。 一応、次のとおりに作業すると解釈して進めます。 よって、回答が的を得ていないかも知れません。

※ マクロが保存されているブックは 「text.
xls」であると解釈します
    1. (手作業) Excelを立ち上げて、「test.
xls」を開く
    2. (マクロ)  「test.
txt」を開く
    3. (手作業) 異常値を修正する
    4. (手作業) 「test.
txt」を上書き保存する
    5. (マクロ)  「test.
txt」を開く
※ 「シート内のセルはマクロを実行するごとにクリアする」とありますが、どの時点で、どのブック (test.txtかtext.xls)
  の、どんなセルをクリアするのでしょうか? そして、その目的は?

「異常のあった test というブックを残したままで」というのは、どれを指しているのでしょうか? 上記3.の作業を済ますと 「test.
txt」は異常のないブックになりますが。
一応、このことは無視して、結論を申し上げます。
右図のメッセージが表示されるのは、上記5.の段階ですね。
そうなる原因は、2.~5.の間に 「test.
txt」を閉じていないからかと思われます。
この回答で良かった場合、あるいは、的外れであった場合、どうかご連絡ください。お待ちしています。

 

Excel VBA Macro