質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Q&A

解決済

1回答

13829閲覧

Excelのワークブックを閉じても勝手にまた開いてしまう。

syusuke9999

総合スコア13

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

0グッド

0クリップ

投稿2015/08/15 07:15

イメージ説明
添付のようなExcelのワークブックの開き方で、(6)となっているExcelワークブックが複数開いたような状態になってしまいます。

この状態で、~(6).xlsmと名付けられたワークブック(その時点で実際に開いてるウインドウは、(6)のつかないもと併せて2つ)を閉じるのですが、すぐまた~(6).xlsmという名前のワークブックが開いてしまいます。

その結果、~(6).xlsmというファイルがVBEでは複数開いたような表示になってしまいます。

タスクマネージャーではExcelがいくつも開いている様子はありません。
閉じたはずのワークブックが勝手に開く理由は何でしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ご使用のExcelのバージョンは2013ですか?
それと、Workbook_BeforeClose(ThisWorkbook 内)やAuo_Close(標準モジュール内)は使用されているでしょうか?

#バージョンが2013になって、MDI→SDIという大きな使用変更があってから、特にユーザーフォームを使用したアプリで従来と挙動が変わってしまい、対応に苦慮されるケースが多いようです。

(参考)Excel 2013 の単一ドキュメント インターフェイスのプログラミング

ところで、ご連携頂いた情報だけでは原因が分からないのですが…不可思議な挙動で嵌った時の自身の経験からすると、まずは処理の流れにおかしな所がないかを再点検してみると良いかもしれません。

お見受けした限りでは、ユーザーフォームを使用し、シート数もモジュール数もそれなりに多い複雑なアプリのようですけれども、モジュールの呼び出し関係が複雑で「不正な処理の流れ」になってしまっていないでしょうか?
文章にすると分かりにくくなってしまうので、A〜Eの5つのモジュールがあった場合について模式的に書くと、赤矢印()のように、呼び出し元に戻らずそのまま別のモジュールへ遷移したりそのまま終了しようとしたりすると、「場合によっては」不可思議な動作(一種の暴走)をしてしまい、想定外の結果を示す(予想外のタイミングでイベントが発生する場合も)場合があります。
イメージ説明

モジュール数が多かったり処理が複雑だったりすると、原因箇所の特定自体が困難になってしまいますが、

  • モジュール間の呼び出し関係をブロック図にして整理してみる
  • 処理の一部をコメントアウトしたり、モジュールを一旦エクスポートしてテスト用のダミーに置き換えるなどの措置を取り、「一箇所ずつ戻す」などの方法で怪しい箇所を絞り込む

のような方法で、原因を切り分けてみてはいかがでしょうか?

投稿2015/08/20 00:12

pi-chan

総合スコア5936

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

syusuke9999

2015/08/20 11:16

大変詳しい情報をありがとうございます。 >Workbook_BeforeClose(ThisWorkbook 内)やAuo_Close(標準モジュール内)は使用されているでしょうか? とのことですが、上記の2つはどちらも利用しておりません。 ワークシートの処理ですが、複数の開発者にまたがって変更されており、外部プログラムとの連携(証券会社のRSSアドイン)などを使用しており、数値が変わる度にイベントが発生しております。 この回答をベストアンサーにして問題ないのですが、原因がほとんど分かっていないことなどから、提供した情報意外に役立ちそうな情報を用意しながらもう少し回答を募集しく思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問