現象
Microsoft Excel 2013 以降のバージョンで、以下の条件を満たす場合にファイルを開くと空白の Excel ウィンドウが表示されます。
-
Excel のプロセスが起動されていない
-
Excel のファイルをダブルクリックまたは、Excel ファイルを選択して右クリックから [開く] でクリックして開く
-
Excel アドインが 2 つ以上有効化されている
-
Excel がアドインを読み込む際の 2 つ目以降のアドインのオープン処理 ( ThisWorkbook / Workbook_Open イベントプロシージャ もしくは 標準モジュール / Auto_Open Sub プロシージャ ) に、以下のような Active Window を切り替える処理が組み込まれている
例 1 :
Private Sub auto_open()
ThisWorkbook.IsAddin = False
ThisWorkbook.IsAddin = True
End Sub
例 2 :
Private Sub Workbook_Open()
Dim newbk As String
Workbooks.Add
newbk = ActiveWorkbook.Name
Workbooks(newbk).Close
End Sub
回避策
以下のいずれかの方法でファイルを開きます。
方法 1 : [ファイル] タブの [開く] でファイルを開く
-
スタート メニューから Excel を起動します。
-
[ファイル] タブをクリックします。
-
[開く] をクリックします。
-
任意のファイルを選択します。
方法 2 : ドラッグ アンド ドロップでファイルを開く
-
スタート メニューから Excel を起動します。
-
任意のファイルを Excel のシート上にドラッグ アンド ドロップします。
状況
マイクロソフトでは、この問題について現在調査中です。詳細については、わかりしだいこの資料に掲載する予定です。
詳細
問題の再現手順
手順 1 : 1 つめのアドインを登録する
-
Excel を起動します。
-
[空白のブック] をクリックします。
-
[ファイル] タブをクリックします。
-
[オプション] をクリックします。
-
[アドイン] をクリックします。
-
"管理" から [Excel アドイン] が選択されていることを確認し、[設定] をクリックします。
-
[ソルバー アドイン] にチェックを入れて、[OK] をクリックします。
手順 2 : アドインを作成する
-
[Alt] キー を押しながら [F11] キーを押して、Visual Basic Editor を起動します。
-
[ThisWorkbook] をダブルクリックします。
-
表示されているモジュールに次のコードを入力します。
Private Sub Workbook_Open()
ThisWorkbook.IsAddin = False
ThisWorkbook.IsAddin = True
End Sub -
[Ctrl] キー を押しながら [S] キーを押します。
-
"ファイルの種類" で [Excel アドイン (*.xlam)] を選択します。
-
"ファイル名" に 「TEST」 と入力して、[保存] をクリックします。
-
Excel を終了します。
手順 3 : 作成したアドインを登録する
-
Excel を起動します。
-
[空白のブック] をクリックします。
-
[ファイル] タブをクリックします。
-
[オプション] をクリックします。
-
[アドイン] をクリックします。
-
"管理" から [Excel アドイン] が選択されていることを確認し、[設定]をクリックします。
-
[TEST] にチェックを入れて、[OK] をクリックします。
-
Excel を終了します。
手順 4 : Excel ファイルを開く
-
既存の Excel ファイルをダブルクリック、または、Excel ファイルを選択して右クリックして、[開く] をクリックして開きます。
結果
空白の Excel ウィンドウが表示されます。
Note :
以下の場合には、Excel 起動時のファイルを読み込む順番が変わるため、本現象は発生しません。
-
手順 2. で作成したアドイン 「TEST」 を「ソルバー アドイン」より先に登録する
-
以下の手順でアドインを登録する
手順 1 : アドインを作成する
-
[Alt] キー を押しながら [F11] キーを押して、Visual Basic Editor を起動します。
-
[ThisWorkbook] をダブルクリックします。
-
表示されているモジュールに次のコードを入力します。
Private Sub Workbook_Open()
ThisWorkbook.IsAddin = False
ThisWorkbook.IsAddin = True
End Sub -
[Ctrl] キー を押しながら [S] キーを押します。
-
"ファイルの種類" で [Excel アドイン (*.xlam)] を選択します。
-
"ファイル名" に 「TEST」 と入力して、[保存] をクリックします。
-
Excel を終了します。
手順 2 : アドインを登録する
-
Excel を起動します。
-
[空白のブック] をクリックします。
-
[ファイル] タブをクリックします。
-
[オプション] をクリックします。
-
[アドイン] をクリックします。
-
"管理" から [Excel アドイン] が選択されていることを確認し、[設定] をクリックします。
-
[ソルバー アドイン] と [TEST] にチェックを入れて、[OK] をクリックします。
-
Excel を終了します。