質問: 初めて質問させていただきます。 わかりにくかったらすみません。 ちょっと説明が長いですが、よろしくお願いします。 見よう見まねで1年前からEXCELでマクロを作ってきました。 自分の作業効率化が目的だったので、なんとなく動いていて納得していたのですが、今回台湾で動かしたところ エラーで動かないとのこと。  ■前提条件 <作成の環境> WINDOWS 7 office2010 但し、今回対象のEXCELはoffice97-2003バージョン .xls形式で保存,実行 <エラーが発生する環境> OS ??? office2003 とのことです。  ■作業手順 1)AP-1で実行 -> ★エラー 以下の内容で修正 ・エラー画面を送付していただき、エラーメッセージは「不正確的字元」であるが、 ファイルが見つかりません的な内容と、赤字のエラー箇所から、マクロ名が漢字であるのが原因かと判断 -> マクロ名をはじめ、マクロ内のコメントを含むすべての文字を半角に修正(全角spaceがないことも確認済み) ・元々10数個のマクロがありましたが、エラーが発生するマクロのみに修正 *このとき、元のEXCELの状態が残っていたら気持ち悪いので 97-2003で新規EXCELを作成し、必要なシートをコピーで挿入 新規マクロを作成し、元のソースコードをコピーで貼り付けてマクロを更新 ・ちなみに、別名で互換性チェックを行い、2003での互換エラーは当初37あったが、 わかる範囲で色を2003の標準カラーのみに展開して現在24個の「再現性の低下」が残っている状態です。  2)上記修正対応を2回行ってもらい、最終的に AP-3で現在実行確認中  現在のvbaの構成 (日本: 問題なく実行できる) --------------------------------------------------------------------------------- ---+--- VBAProject(AP-3) +----+---Microsoft Excel Object +------sheet1 (data) <---- copyで挿入したシート +------sheet2 (grf) <---- マクロを実行したら展開されるシート +------sheet3 (index) <---- copyで挿入したシート +------ThisWorkbook +---+---標準モジュール +----Module1 ------------------------------------------------------------------------------- ■現在発生しているエラー状況 1)エラー発生箇所 上記、作業手順1)★エラーと同じ箇所(AP-1のマクロ名が漢字の箇所)でエラーが発生し、処理が中断される *実行時にはAP-3以外はすべて閉じてもらって単独で実行してもらっています。 2)エラー画面 相手側から送付してもらったエラー画面をみると、AP-1の背後に、AP-3のVBAの状態が表示されているが AP-3のvbaの構成がこちらの構成と異なっています。 3)実行時のvbaの構成  ---+--- VBAProject(AP-3) ---+--- VBAProject(Book1) ---+--- VBAProject(AP-1) +----+---Microsoft Excel Object +------sheet1 (data) +------sheet2 (grf) +------sheet3 (index) +------ThisWorkbook +---+---標準モジュール +----Module1 +----Module2 +----Module3 +----Module4 .......  画面コピーで見るだけで現地の人にも聞けない状況で、はっきりとはわかりませんが、projectが勝手に増えています。 なぜ、閉じている過去実行したAPまで勝手にopenされて実行されるのでしょうか? AP-3自体は問題なく処理されているのでしょうか? EXCELのプロセスが正しくcloseしていない?ようですが、どうcloseしたらいいかもわかりません。 ご回答、よろしくお願いします。
回答: 台湾のPC・エクセル仕様がどのように影響するか分かりませんが、言語が違うだけで同じように動作するとおもいますが。 >*実行時にはAP-3以外はすべて閉じてもらって > 単独で実行してもらっています。 projectが増えているのか、最初から非表示状態で実行されているのか切り分けれないでしょうか? (projectウィンドウの状態をみるに、AP-1もAP-3も実行されていて、表示されているのはAP-1のように見受けられます) AP-1とAP-3のプロシージャ名が重複してて、操作時に誤ってAP-1が実行されていませんか? excelのプロセスが多重実行されている場合は、VBEでのプロジェクトもexcelのプロセス別で処理されますので複数のexcelプロセスは起動していないかと。 タスクマネージャのプロセスタブから「EXCEL.EXE」が複数起動していればプロセスが残っていることになりますが。 処理内容にもよるとおもいますが、特殊なことをしていなければプロセスを超えて影響しあう事はないかと。 起動時にブックの状態を判定する処理を加えるか、AP-3の処理状況については、処理内容をログデータへ随時出力するようにコードを改修されてはどうでしょうか。