Home / Microsoft / Excel / Excelのウィンドウが最大化できない・画面外に出た時の対処法

Excelのウィンドウが最大化できない・画面外に出た時の対処法

※本ページにはプロモーション(広告)が含まれています

結論から言います。Excelのウィンドウが小さいまま開く・画面外に出て見えないのは、Excelの故障でも設定ミスでもありません。ウィンドウのサイズと位置は、Excelアプリ側ではなく「ブックファイルそのもの」に記録されているからです。だから「特定のファイルだけ」おかしくなります。直し方は、そのファイルを開く→最大化する→必ず上書き保存する、の3手です。

この原理を先に押さえておくと、ネット上に散らばっている対処法のうち「自分に効くもの」と「絶対に効かないもの」が一瞬で見分けられるようになります。以下、まずは30秒で自分の症状を特定するところから始めます。

📑 この記事の目次(タップで開く)
  1. 1. 30秒診断:あなたの症状はこの6つのどれですか
  2. 2. 【応急処置】画面外に飛んだウィンドウを今すぐ呼び戻す4つの方法
  3. 3. すべての謎が解ける原理:サイズと位置は「Excel」ではなく「ファイル」に記録されている
  4. 4. 恒久的に直す:開く→最大化→上書き保存の3手
  5. 5. 【定番策の罠】ショートカットの「実行時の大きさ」が効かない理由
  6. 6. ファイルが数百個ある場合に一括で直す(VBAを使う方法)
  7. 7. 症状①:新規ブックも含めて、毎回どのファイルも小さい場合
  8. 8. 症状④:最大化ボタンを押しても反応しない場合
  9. 9. 症状⑤:最大化はできるが表示が崩れる・列幅やボタンがずれる
  10. 10. 症状⑥:「最小化」という言葉が指す4つの状態を切り分ける
  11. 11. マルチモニター・リモート接続・持ち出しで飛ぶのを止める
  12. 12. Excel 2013以降のSDIを知ると、挙動の理由が分かる
  13. 13. 原因別・対処の早見表
  14. 14. やってはいけないこと・進んでよい条件
  15. 15. よくある質問
  16. 16. まとめ

1. 30秒診断:あなたの症状はこの6つのどれですか

「Excel ウィンドウ 最大化できない」で検索する人の症状は、実は6つに分かれます。原因も対処もそれぞれ違うので、まずここで行き先を決めてください。

あなたの症状 主な原因 読むべき章
① どのファイルを開いても毎回小さい(新規ブックも小さい) Excel側・Windows側の状態 第7章
② 特定のブックだけ小さい(新規ブックは最大化される) そのファイルに小さいサイズが記録されている 第3章・第4章
③ 開いた瞬間に画面外へ飛んで見えない ファイルに画面外の座標が記録されている/モニター構成の変化 第2章 → 第4章 → 第11章
④ 最大化ボタンを押しても反応しない・操作を受け付けない 裏でダイアログが開いている/アドインの固まり 第8章
⑤ 最大化はできるが表示が崩れる・ボタンや列幅がずれる 拡大率の違うディスプレイの混在 第9章
⑥ 最小化から戻らない/リボンが消えた/全画面から抜けられない 「最小化」という言葉が指すものが4種類ある 第10章

③のように「今まさに画面が見えなくて困っている」場合は、第2章の応急処置から読んでください。それ以外の方は第3章の原理から読むと、以降の対処がすべて理解できます。

先に一点だけ確認をお願いします。この記事はデスクトップ版のExcel(パソコンにインストールして使うExcel)が対象です。ブラウザで使うWeb版のExcelには、そもそもアプリのウィンドウを最大化・最小化するという概念がありません。ブラウザのウィンドウ自体は最大化できますが、Excelの設定として探しても該当する項目は見つかりません。Web版をお使いの方は、ブラウザ側の表示設定をご確認ください。

2. 【応急処置】画面外に飛んだウィンドウを今すぐ呼び戻す4つの方法

ファイルを開いた瞬間にウィンドウが画面の外へ行ってしまい、タスクバーにはあるのに本体が見えない——この状態は、マウスでは絶対に掴めません。キーボードで引き戻します。効きやすい順に4つ紹介しますが、環境によって効かないものがあるので、上から順に試してください。

方法1:Windowsキー+矢印キーで強制的に画面内へ引き戻す(最も成功率が高い)

  1. タスクバーのExcelアイコンをクリックして、目的のウィンドウをアクティブ(操作対象)にします。見えていなくても、タスクバーで選ばれていればアクティブになっています。
  2. Windowsキーを押しながら「↑」を押します。これでウィンドウが最大化され、画面内に強制的に収まります。

これで戻ることが多いです。戻らない場合や、別のモニター側に飛んでいる場合は次を試します。

  • Windowsキー+Shift+「←」または「→」:ウィンドウを隣のモニターへ移動させます。マルチモニターを外した直後に「存在しないモニター」の位置に取り残されているケースは、これで戻ることがあります。
  • Windowsキー+「←」または「→」:画面の左半分/右半分にスナップ(吸着)させます。位置が確実にリセットされるので、座標が壊れている場合に有効です。

スナップした後で改めてWindowsキー+「↑」を押すと最大化できます。なお、Windows 11ではWindowsキー+「Z」でスナップレイアウトの候補を呼び出すこともできます。これらのショートカットは、Windowsの「設定」でスナップ機能がオフになっていると効きません。効かない場合は「設定」→「システム」→「マルチタスク」でスナップ関連の項目を確認してください(項目名や階層はWindowsのバージョン・ビルドによって異なる場合があります)。

Windowsキー+矢印やスナップレイアウトそのものが反応しないという方は、Excel以前にWindows側の機能が止まっています。原因と復旧手順はWindows 11のスナップレイアウトが使えない・表示されない時の対処法にまとめてあります。先にそちらを直すと、以降の作業が一気に楽になります。

方法2:Alt+スペースキーからウィンドウを手で動かす

昔から使われている定番の方法です。画面にウィンドウもメニューもまったく見えていない状態のまま、キーボードだけで最後まで完走できます。

  1. タスクバーで目的のExcelウィンドウをアクティブにします。
  2. Altキーを押しながらスペースキーを押します。ウィンドウのシステムメニュー(「移動」「サイズ変更」「最小化」「最大化」「閉じる」)が呼び出されます。
  3. 続けて「M」キーを押します。Mは「移動」に割り当てられたアクセスキーです。メニュー自体が画面外にあって見えていなくても、Mを押せば移動モードに入ります。ここがこの方法の要です。メニューが見えている場合は、矢印キーで「移動」を選んでEnterキーを押しても同じことです。
  4. 矢印キーをどれか1回押します。この一押しで、ウィンドウが「掴まれた」状態になります。
  5. そのままマウスを動かすと、ウィンドウがマウスに追従して動きます。マウスを画面の中央へ持ってくれば、ウィンドウも画面内へ入ってきます。マウスを使わず、矢印キーを押し続けて少しずつ寄せることもできます。
  6. 画面内の見える位置まで来たら、クリックするかEnterキーを押して確定します。

手順3で「M」を押しても何も起きない場合は、日本語入力がオンになっていて「M」が文字入力として吸われている可能性があります。半角英数に切り替えてからやり直してください。

この方法が効かないことがあります。Excelでは単独のAltキーがリボンのキーヒント(各タブに表示されるアルファベット)を呼び出す動作に割り当てられており、環境によってはAlt+スペースがシステムメニューを開かずキーヒントだけが出ることがあります。その場合はいったんEscキーでキーヒントを消してから、方法1に切り替えてください。「必ずAlt+スペースで出る」と書いている記事が多いですが、断定はできません。

方法3:タスクバーからShift+右クリックでシステムメニューを出す

方法2のメニューを、タスクバーから直接呼び出す方法です。

  1. タスクバーのExcelアイコンをShiftキーを押しながら右クリックします。
  2. 「移動」を選び、あとは方法2と同じく矢印キーまたはマウスで動かします。

注意点が2つあります。ひとつは、Shiftキーを押さずに普通に右クリックすると、最近使ったファイルの一覧(ジャンプリスト)が出てしまい「移動」が現れないこと。もうひとつは、Excelのウィンドウが複数開いていてタスクバーでアイコンがまとめられている場合、アイコンにマウスを乗せて出てくる小さなプレビュー(サムネイル)の方をShift+右クリックする必要があることです。まとめ表示の設定によって挙動が変わります。

方法4:Excelの「整列」で画面内に並べ直す

Excel自身の機能で、開いているブックのウィンドウを画面内に並べ直す方法です。「表示」タブ→「整列」(すべて整列)を選び、「並べて表示」などを選んでOKを押すと、開いている各ブックのウィンドウが画面内に配置し直されます。

この機能は「Excel 2010までのMDI時代の遺物」と紹介されることがありますが、Excel 2013以降のSDI(第12章で解説)でも「整列」は現存しており、実際に動きます。ウィンドウごとに独立して並べ直されるため並び方はMDI時代と異なりますが、画面外に取り残されたウィンドウを画面内へ引き戻す手段として十分使えます。

ただし、この操作をするにはExcelのリボンが見えている必要があります。目的のウィンドウ自体が画面外でも、別のブックが画面内に見えていれば、そちらのリボンから実行できます。何も見えていない場合は方法1〜3を先に試してください。

方法1〜4がすべて効かない場合の最終手段

ディスプレイの構成を一時的に変えると、Windowsが全ウィンドウの座標を再計算するため、画面外のウィンドウが強制的に画面内へ戻ることがあります。

  1. 「設定」→「システム」→「ディスプレイ」を開きます。
  2. 複数モニターの場合、表示モードを「拡張」から「1のみに表示」などに一度切り替えて、元に戻します。
  3. 単一モニターの場合、解像度を一段階変更して、元に戻します。

いずれも一時的な変更なので危険はありませんが、他のアプリのウィンドウ配置も一緒に動きます。作業中のウィンドウが多い時は注意してください。

ここまではあくまで応急処置です。呼び戻しただけでは、次に同じファイルを開いたときにまた同じ場所へ飛びます。恒久的に直すには、次章の原理を理解したうえで第4章の手順を実行してください。

Excelのウィンドウが最大化できない症状を型で分ける図

3. すべての謎が解ける原理:サイズと位置は「Excel」ではなく「ファイル」に記録されている

ここがこの記事の背骨です。ここを理解していないと、Excelの設定画面を延々と探し続けることになります。

Excelのウィンドウのサイズと位置は、Excelアプリの設定として保存されているのではありません。ブックファイル(.xlsxなど)の内部に、そのブック専用の情報として書き込まれています。

つまり、ブックを保存した瞬間に「このファイルは、幅◯◯・高さ◯◯のウィンドウで、画面の左から◯◯・上から◯◯の位置に開く」という情報がファイルに焼き付けられます。次に誰がどのパソコンで開いても、Excelはその記録どおりのサイズと位置でウィンドウを作ろうとします。

この一点から、6つの症状がすべて説明できます

よくある疑問 原理からの答え
なぜ特定のファイルだけ小さいのか そのファイルに小さいサイズが記録されているから。他のファイルには記録されていない
なぜ新規ブックは最大化されるのか 新規ブックにはまだ記録が無く、Excelが既定の状態で開くから
なぜ他人からもらったファイルだけおかしいのか 作成者のパソコンの画面サイズ・モニター配置で記録された座標が、自分の環境では画面外・極小になるから
なぜ最大化しただけでは次回も直っていないのか 最大化は画面上の操作にすぎず、上書き保存しないとファイルに書き戻されないから
なぜ共有フォルダのファイルでは直せないのか 読み取り専用で開いていると上書き保存できず、記録を更新できないから
なぜExcelの設定をいくらいじっても直らないのか 記録の主体がExcelではなくファイルだから。Excel側の設定を変えても、ファイルに書かれた値の方が優先される

ネット上の解説の多くは「Excelは前回のウィンドウサイズを記憶しています」で止まっています。しかし記憶している主体が「Excelアプリ」なのか「ファイル」なのかを区別しない限り、この症状は永久に理解できません。区別できていないから、Excelのオプション画面を探し回って徒労に終わるのです。

【上級者向け】自分のファイルに何が記録されているか、実際に見て確認する

「本当にファイルに書かれているのか」を目で確かめたい方向けの方法です。必ずファイルのコピーを作ってから行ってください。原本で作業する必要はまったくありません。

  1. 対象のブックをデスクトップなどにコピーします。
  2. コピーしたファイルの拡張子を .xlsx から .zip に変更します(拡張子が表示されていない場合は、エクスプローラーの「表示」から拡張子を表示する設定にします)。
  3. そのZIPファイルをダブルクリックして開き、xl フォルダーの中にある workbook.xml を、デスクトップなどへドラッグしてコピーします。エクスプローラーのZIP閲覧画面からは、中のファイルを直接テキストエディターで開けないことが多いので、この「いったん外に取り出す」一手が必要です。
  4. 取り出した workbook.xml右クリック→「プログラムから開く」→「メモ帳」で開きます。ダブルクリックするとブラウザなど別のアプリで開くことがありますが、中身が読めればどのアプリでも構いません。
  5. ファイル内の workbookView という記述を探します。そこに xWindow(左からの位置)、yWindow(上からの位置)、windowWidth(幅)、windowHeight(高さ)という値が並んでいます。

これが「ファイルに焼き付けられたウィンドウの寸法」の正体です。単位はピクセルではなくトゥイップという単位(1ポイントの20分の1)で、画面の解像度が違っても同じ見え方になるよう設計されています。数値が極端に小さかったり、xWindow が異常に大きい値だったりすれば、症状の原因がここにあると確定できます。

なお、この確認は読むだけにとどめてください。XMLを直接書き換えてZIPに戻す方法もありますが、ブックが破損するリスクがあり、第4章の手順で普通に直せるものにわざわざ使う価値はありません。

重要な例外:Excelがすでに起動していると、記録どおりに開かないことがある

原理を押さえたうえで、必ず知っておくべき例外があります。

すでに別のExcelウィンドウが開いている状態で新しいブックを開くと、そのブックに記録されたサイズではなく、先に開いていたウィンドウのサイズを引き継いで表示されることがあります。

これは、Excel 2013以降のExcelが、エクスプローラーからファイルを開いたときに「新しいExcelを起動する」のではなく「すでに動いているExcelに、そのファイルを追加で開かせる」動きをするためです。Excel 2013でウィンドウの管理方式が変わったこと(第12章で解説するSDI化)に伴う仕様で、既定では複数のブックが1つのExcelのプロセスの中で開かれます。

この例外があるせいで、症状の出方が次のようにブレます。

  • Excelを1つも開いていない状態で対象ファイルを開くと小さい
  • 先に別のファイルを最大化して開いておいてから対象ファイルを開くと、なぜか普通に開く
  • 日によって症状が出たり出なかったりする

「不定期に発生する」「日によって違う」という声をよく見かけますが、その一部はこの継承の挙動で説明がつきます。切り分けをするときは、必ずExcelを全部閉じてから、対象ファイル単独で開いて確認してください。他のブックを開いたまま検証すると、結果が信用できなくなります。

4. 恒久的に直す:開く→最大化→上書き保存の3手

症状②③(特定のファイルだけ小さい・画面外に出る)の正式な直し方です。原理どおりなので、原理が分かっていれば手順は当たり前に見えるはずです。

基本手順

  1. Excelをすべて閉じます。他のブックが開いていると継承が起きて、正しく記録されないことがあります。
  2. 対象のブックを開きます。画面外に出ている場合は、第2章の方法でまず画面内へ引き戻します。
  3. ウィンドウを最大化します(タイトルバー右上の四角いボタン、またはWindowsキー+「↑」、またはタイトルバーをダブルクリック)。
  4. Ctrlキー+Sキーで上書き保存します。ここが最重要です。保存しなければファイルには何も書き戻されません。
  5. ブックを閉じます。
  6. もう一度そのファイルを開いて、最大化された状態で開くことを確認します。

「最大化して閉じれば直る」と書いている解説もありますが、閉じる際に「保存しますか」で「保存しない」を選んでしまうと、当然ながら何も記録されません。明示的に上書き保存すると覚えてください。

最大化ではなく「好きなサイズ」で固定したい場合

常に最大化ではなく、画面の半分など特定のサイズで開かせたい場合は、手順3で最大化する代わりに、次のようにします。

  1. いったん最大化ボタンを押し、もう一度押して最大化を解除します(これで「最大化状態ではない」と確定させます)。
  2. ウィンドウの端をドラッグして好きなサイズにし、タイトルバーをドラッグして好きな位置に置きます。
  3. Ctrlキー+Sキーで上書き保存します。

最大化状態のまま保存すると「最大化」という状態そのものが記録されるため、サイズと位置の細かい指定は反映されません。一度最大化を解除するのがコツです。

保存しても直らない・記録されないケース

ここが競合記事でほとんど触れられていない部分です。次の条件では、上書き保存自体ができないか、できても記録が更新されないことがあります。

状況 起きること 対処
読み取り専用で開いている 上書き保存が拒否される タイトルバーに「読み取り専用」と出ていないか確認。ファイルのプロパティで読み取り専用属性を外す
共有フォルダーで他の人が開いている 読み取り専用になり保存できない 全員が閉じたタイミングで実施する
「読み取り専用を推奨する」が設定されている 開くたびに読み取り専用の確認が出る 確認画面で「いいえ」を選び編集可能で開いてから保存する
保護ビューで開いている 編集も保存もできない 上部の「編集を有効にする」を押してから最大化・保存する
ブックの保護の「ウィンドウ」がかかっている(Excel 2010以前で保護されたファイルに限る ウィンドウのサイズ変更・移動自体ができない Excel 2013以降ではこの原因は通常あてはまりません。「校閲」タブ→「ブックの保護」を開いても、SDI化にともなって[ウィンドウ]のチェックボックス自体が選択できなくなっているためです。Excel 2010以前で保存された古いファイルを開いた場合にだけ、この状態が残っていることがあります
OneDriveやSharePointの同期フォルダーにある 自動保存や共同編集の挙動により、記録が意図どおりに残らないことがある いったんローカルのフォルダーへコピーして直し、戻す方法で検証する
フォルダーへの書き込み権限が無い 保存時にアクセス許可のエラーが出る 管理者またはフォルダーの所有者に権限を確認する

「最大化して保存したのに直らない」という相談の多くは、この表のどれかに当たっています。保存が本当に成功したのかを先に確認してください。保存後にファイルの更新日時が今の時刻になっていれば、書き込みは成功しています。

会社の共有ファイルを勝手に上書き保存してよいか

重要な注意点です。ウィンドウサイズの記録を更新するには上書き保存が必要ですが、共有ファイルの場合、上書き保存すると更新者・更新日時が自分に書き換わります。監査や履歴管理の対象になっているファイルでは、これがトラブルの種になり得ます。

心配な場合は、自分の手元にコピーを作ってそちらを直して使う、あるいは事前に管理者へ一報を入れる、という進め方をおすすめします。中身を1文字も変えていなくても、更新記録は残ります。

5. 【定番策の罠】ショートカットの「実行時の大きさ」が効かない理由

この症状を検索すると、ほぼ必ず出てくるのが次の方法です。

Excelのショートカットを右クリック→「プロパティ」→「ショートカット」タブ→「実行時の大きさ」を「最大化」に変更する

そして、これを試して直らなかった人が大量にいます。質問サイトや掲示板では「この方法を含めていくつも対処を試したが、既存のファイルだけ小さいまま」という相談が繰り返し見られ、決定的な答えが出ないまま流れていることも珍しくありません。

なぜ効かないのか。理由は3つあり、いずれも構造的なものです。

理由1:ファイルのダブルクリックは、そのショートカットを経由していない

「実行時の大きさ」は、そのショートカットをダブルクリックしてアプリを起動したときにだけWindowsからアプリへ渡される指定です。デスクトップやスタートメニューのExcelアイコンから起動すれば効きます。

しかし、エクスプローラーで .xlsx ファイルをダブルクリックしたときは、そのショートカットは一切使われていません。Windowsは拡張子とアプリの関連付けをたどって直接Excelを呼び出します。経路が違うので、ショートカットに設定した内容が届きようがないのです。

理由2:Excelがすでに起動していると、そもそも新しく起動していない

第3章の例外でも触れたとおり、Excel 2013以降ではエクスプローラーからファイルを開く操作は、すでに動いているExcelのプロセスが処理します。アプリが新しく起動しないなら、「起動時のウィンドウの大きさ」という指定が働く場面自体がありません。

理由3:アプリが自分でサイズを決めている場合、Windowsの指定より優先される

「実行時の大きさ」はWindowsからアプリへの要望にすぎません。アプリ側が自分でウィンドウサイズを管理している場合、この要望は無視されます。Excelはまさにそのタイプで、ブックに記録されたサイズを自分で読んで適用します。

結局この方法はいつ効くのか

起動のしかた 「実行時の大きさ」は効くか
デスクトップ・スタートメニューのアイコンからExcelを起動する(空のExcel) 効くことが多い
そのショートカットに特定ファイルを指定して起動する 効くことがある
エクスプローラーで .xlsx をダブルクリックする 効かないことが多い
すでにExcelが起動している状態でファイルを開く ほぼ効かない
メールの添付ファイルやリンクから開く ほぼ効かない

この方法が「万能策」として紹介されているのは、症状①(Excelを起動すると毎回小さい)には実際に効くケースがあるからです。しかし、この記事を読んでいる方の多くが抱えている症状②③(特定のファイルだけ・既存ファイルだけ)には、原理的に届きません。すでに試して直らなかった方は、時間の無駄だったわけではなく「効かない条件だった」だけです。第4章の手順に進んでください。

なお、実行ファイル本体(excel.exe)のプロパティを変更するよう勧める助言も見かけますが、実行ファイル自体には「実行時の大きさ」というプロパティは無く、Officeのプログラム本体をむやみに触ることはおすすめしません。

6. ファイルが数百個ある場合に一括で直す(VBAを使う方法)

ここが、この症状で最も答えが見つからない領域です。「対象のExcelファイルが膨大にあるので、1つずつ開いて直すのは時間がかかりすぎる」という声はよく見かけますが、それに正面から答えている解説はほとんどありません。1ファイルずつ開いて最大化して保存する方法は、10個なら現実的ですが、300個では現実的ではありません。

⚠️ 実行前に必ず読んでください

ここから紹介するのは、Excelのマクロ(VBA)でブックを順番に開き、最大化して上書き保存する方法です。すべてのファイルを実際に上書き保存します。次の3点を必ず守ってください。

  1. 必ずバックアップを取ってください。対象フォルダーをまるごと別の場所にコピーし、そのコピーに対して実行するのが最も安全です。原本には一切触れずに済みます。
  2. まず3〜5ファイル程度の小さなフォルダーで試してください。いきなり全件に流さないでください。
  3. 共有フォルダー上で直接実行しないでください。他の人が開いている最中のファイルは保存に失敗します。ローカルにコピーして処理し、終わってから戻す進め方が安全です。
  4. そもそも自分の環境でマクロを実行できるか確認してください。下記のように新しいブックの標準モジュールへ直接コードを貼り付けてF5キーで実行する場合、「マクロを有効にしますか」という黄色い警告バーは通常出ません(警告バーは、マクロが保存されたファイルを開いたときに出るものだからです)。一方で、組織のポリシーやトラストセンターの設定でVBA自体が無効化されていると、F5キーを押しても何も起きない、あるいはマクロが無効である旨のメッセージが出て終わります。その場合はこの方法は使えないので、後述の「VBAを使いたくない場合の現実的な代替策」へ進んでください。

また、次の点も理解したうえで実行してください。上書き保存すると更新日時と更新者が変わります。ファイルの更新履歴が業務上意味を持つ環境では、事前に関係者に確認してください。それが難しい環境なら、この方法は使わず、よく使うファイルだけを手作業で直す方が安全です。

手順

  1. 対象フォルダーをまるごとコピーします(例:C:\作業用コピー\)。
  2. 新しいExcelブックを1つ作り、Altキー+F11キーでVBAの編集画面(Visual Basic Editor)を開きます。
  3. メニューの「挿入」→「標準モジュール」を選びます。
  4. 右側の白い領域に、下記のコードを貼り付けます。
  5. コード内のフォルダーのパスを、手順1で作ったコピー先に書き換えます。末尾の円記号まで含めて指定してください。
  6. F5キーで実行します。
Sub ブックのウィンドウを一括で最大化()

    Dim 対象フォルダ As String
    Dim ファイル名 As String
    Dim wb As Workbook
    Dim 成功 As Long
    Dim 失敗 As Long
    Dim ログ As String

    ' ↓ここを自分のコピー先フォルダーに書き換える(末尾の円記号まで必要)
    対象フォルダ = "C:\作業用コピー\"

    Application.DisplayAlerts = False

    ファイル名 = Dir(対象フォルダ & "*.xlsx")

    Do While ファイル名 <> ""

      ' Excelが開いている間にできる一時ファイル(~$で始まる)は対象外にする
      If Left(ファイル名, 2) <> "~$" Then

        On Error Resume Next
        Set wb = Nothing
        Set wb = Workbooks.Open(Filename:=対象フォルダ & ファイル名, UpdateLinks:=0)

        If wb Is Nothing Then
            失敗 = 失敗 + 1
            ログ = ログ & "開けません: " & ファイル名 & vbLf
            Err.Clear
        Else
            If wb.ReadOnly Then
                失敗 = 失敗 + 1
                ログ = ログ & "読み取り専用: " & ファイル名 & vbLf
                wb.Close SaveChanges:=False
            Else
                wb.Windows(1).WindowState = xlMaximized
                wb.Save
                If Err.Number = 0 Then
                    成功 = 成功 + 1
                Else
                    失敗 = 失敗 + 1
                    ログ = ログ & "保存失敗: " & ファイル名 & vbLf
                    Err.Clear
                End If
                wb.Close SaveChanges:=False
            End If
        End If
        On Error GoTo 0

      End If

        ファイル名 = Dir()
    Loop

    Application.DisplayAlerts = True

    MsgBox "成功 " & 成功 & " 件 / 失敗 " & 失敗 & " 件" & vbLf & vbLf & ログ

End Sub

コードのポイント

  • 失敗したファイルを最後に一覧表示します。途中で止まらず全件処理し、終わってから「どれが失敗したか」が分かります。失敗した分だけ手作業で直せば済みます。
  • 画面更新は止めていません。処理を速くするために画面更新を止める書き方をよく見かけますが、今回はウィンドウの状態そのものを操作するため、止めると反映が不安定になることがあります。遅くても確実さを取っています。
  • 読み取り専用のファイルは、開いた時点で判定してスキップします。無理に保存を試みてエラーで止まるのを防いでいます。
  • Excelが開いている間にできる一時ファイル(~$ で始まる名前)は自動でスキップします。この除外を入れないと、実体のない一時ファイルを開こうとして「開けません」が大量にログへ並び、処理が壊れたように見えてしまいます。表示される成功・失敗の件数を正しく読むための1行です。
  • 対象は .xlsx だけです。.xls や .xlsm も直したい場合は、コード内の "*.xlsx" を書き換えて、拡張子ごとに分けて実行してください。マクロ入りのブック(.xlsm)は、開いた瞬間にそのブックのマクロが動く可能性があるため、中身が信頼できるファイルだけに限定してください。

この方法で失敗しやすい条件

失敗の理由 見分け方・対処
他の人が開いている 「読み取り専用」としてログに出る。全員が閉じてから再実行する
パスワードで保護されている パスワード入力の画面で処理が止まる。対象から外して手作業で直す
Excel 2010以前で「ウィンドウの保護」がかかったまま残っている 保存はできても状態が変わらない。ただしExcel 2013以降ではこの保護を新たに設定することはできないため、該当するのは古いファイルだけです。ログ上は「成功」と出るので、実際に開いて確認する
フォルダーの階層が深すぎてパスが長い 「開けません」としてログに出る。浅い場所へ移してから実行する
ファイルが破損している 「開けません」としてログに出る。個別に開いて修復を試す
サブフォルダーの中にある このコードは指定フォルダー直下のみが対象。サブフォルダーごとに実行する

VBAを使いたくない場合の現実的な代替策

マクロの実行がセキュリティポリシーで禁止されている職場もあります。その場合は、次のように割り切るのが現実的です。

  • 頻繁に開くファイルだけ直す。300個あっても、日常的に開くのは10〜20個ということがほとんどです。第4章の手順で、使うたびに1個ずつ直していけば、1〜2週間で実質的に解決します。
  • 開いてから最大化する動作を体に覚えさせる。ファイルを開いたら反射的にWindowsキー+「↑」を押す。根本解決ではありませんが、ストレスは大きく減ります。
  • 新しく作るファイルの元になるブックを1つ直しておく。よく使う形式のブックがあるなら、最大化状態で保存したものを「ひな形」として1つ用意し、新規作成のたびにそれをコピーして使ってください。今後そのファイルをコピーして使えば、新しく作るファイルには正しい状態が引き継がれるので、直すべきファイルがこれ以上増えません。過去分を全部直すより、まずここを止める方が効果が大きいことも多いです。

画面外に出たウィンドウをキーボードで呼び戻す手順

7. 症状①:新規ブックも含めて、毎回どのファイルも小さい場合

第3章の原理はあくまで「特定のファイルだけおかしい」場合の説明です。新規ブック(Ctrlキー+Nキーで作る空のブック)まで小さいなら、原因はファイルではなくExcel側かWindows側にあります。

切り分けの手順

  1. Excelをすべて閉じます。
  2. スタートメニューからExcelを起動し、空白のブックを作ります。
  3. これが小さいかどうかを見ます。

空白のブックが小さいなら、以降の対処に進みます。空白のブックは最大化されるなら、症状②③です。第3章・第4章に戻ってください。

対処1:一度だけ最大化して、Excelを正常に終了する

空白のブックを最大化した状態で、右上の×ボタンからきちんとExcelを終了してください。強制終了やパソコンの電源ボタンでの終了を繰り返していると、既定の状態が正しく書き戻されないことがあります。次回起動時に最大化されるか確認します。

対処2:ショートカットの「実行時の大きさ」を設定する

第5章で「既存ファイルには効かない」と書いた方法ですが、この症状①には効く可能性があります。スタートメニューやデスクトップのExcelアイコンからの起動が対象だからです。

  1. デスクトップのExcelショートカットを右クリックし、「プロパティ」を選びます。
  2. 「ショートカット」タブの「実行時の大きさ」を「最大化」に変更します。
  3. 「OK」を押します。

スタートメニューのExcelから設定したい場合は、スタートメニューの「すべてのアプリ」でExcelを右クリック→「詳細」→「ファイルの場所を開く」で、ショートカットの実体が置かれたフォルダーが開きます。そこにあるショートカットのプロパティを開いてください。なお、この「詳細」はWindows 11での表記です。Windows 10では同じ位置が「その他」になっています。

対処3:Excelがすでに起動していないか確認する

画面に見えていなくても、Excelのプロセスが裏で残っていることがあります。その状態で新しくExcelを開くと、見えない既存ウィンドウの状態を継承してしまいます。

⚠️ 先に読んでください。これから紹介する「タスクの終了」は、Excelを強制的に打ち切る操作です。未保存のブックが開かれていた場合、その内容は保存されずに失われます。心当たりのあるブックがあれば、必ず先に保存してから進めてください。判断がつかない場合は、この対処を飛ばして対処4へ進んでも構いません。

  1. Ctrlキー+Shiftキー+Escキーでタスクマネージャーを開きます。
  2. 「プロセス」の一覧に「Microsoft Excel」が残っていないか確認します。
  3. 残っていて、かつ開いているブックに心当たりが無ければ、選んで「タスクの終了」を押します。

対処4:Officeを最新の状態にする

「不定期に極端に小さく開く」という現象は、更新プログラムの不具合として報告されたことがあります。Excelの「ファイル」タブ→「アカウント」→「更新オプション」→「今すぐ更新」で最新版を適用し、パソコンを再起動して様子を見てください(メニュー名や階層はバージョンによって異なります。表示が違う場合は公式の最新情報をご確認ください)。

対処5:Officeのクイック修復を実行する

ここまでで直らない場合の次の一手です。

  1. 「設定」→「アプリ」→「インストールされているアプリ」を開きます。
  2. Officeの項目を探します。表示名は「Microsoft 365 (Office)」「Microsoft 365 Apps for enterprise」「Microsoft Office Home a​nd Business」など、契約形態やバージョンによって異なります。「Microsoft Office」という名前で並んでいるとは限りません。
  3. その項目の右端にある「…」(三点)メニューから「変更」を選びます(Windows 10では項目をクリックすると「変更」ボタンが現れます)。
  4. 「クイック修復」を選んで実行します。

クイック修復はインターネット接続を必要とせず、比較的短時間で終わります。これで直らない場合に「オンライン修復」がありますが、こちらは時間がかかり、設定が初期化されることがあります。いきなりOfficeの再インストールに進む必要はありません。

オンライン修復でも直らない場合の3つの逃げ道

ここまで全部やって、それでも新規ブックまで小さいままという場合です。ここから先は「Office本体の問題ではない可能性」を疑う段階に入ります。次の順で切り分けてください。

  1. Windowsに新しいローカルユーザーアカウントを作り、そこでExcelを起動してみる。「設定」→「アカウント」→「他のユーザー」から追加できます。新しいアカウントでサインインしてExcelを開き、症状が出なければ、原因はOfficeではなく元のユーザープロファイル側にあると確定できます。この場合、新しいアカウントへ移行するか、元のプロファイルの再作成を検討することになります。逆に新しいアカウントでも症状が出るなら、プロファイルは無罪です。
  2. 直近の更新が原因かどうかを見る。「ファイル」タブ→「アカウント」→「更新オプション」で更新を一時的に無効にし、症状の出方が変わるか確認します。あわせて同じ画面でバージョン番号と更新チャネル(「現在のチャネル」「月次エンタープライズ チャネル」など)を控えておいてください。ある日を境に急に始まった症状なら、更新が引き金である可能性が残ります。ただし更新の無効化はセキュリティ上のリスクを伴うので、切り分けが済んだら必ず元に戻してください。
  3. それでも出るならマイクロソフトのサポートへ相談する。その際、控えたバージョン番号と更新チャネル、新しいユーザーアカウントで再現したかどうか、クイック修復・オンライン修復を実施済みであることを最初に伝えると、同じ確認の往復を省けます。

8. 症状④:最大化ボタンを押しても反応しない場合

「小さいまま」ではなく「操作そのものを受け付けない」場合は、まったく別の問題です。ウィンドウサイズの記録は関係ありません。

まず疑うべき3つ

(1) 裏でダイアログ(確認画面)が開いている

Excelは、何らかの確認画面が開いている間、他の操作を一切受け付けません。そしてその確認画面が、画面外や別のウィンドウの裏に隠れていることがあります。

  • Escキーを何度か押してみます。開いている確認画面が閉じることがあります。
  • Altキー+Tabキーでウィンドウを切り替え、隠れた小さな画面が無いか探します。
  • タスクバーのExcelアイコンにマウスを乗せ、出てくるプレビューの数を確認します。想定より多ければ、そのどれかが確認画面です。

(2) 保護ビューで開いている

インターネットからダウンロードしたファイルやメールの添付ファイルは、保護ビューという制限モードで開きます。この状態では操作が制限され、動作が極端に重くなることもあります。画面上部に黄色い帯で「保護ビュー」と表示されていないか確認し、内容が信頼できるファイルであれば「編集を有効にする」を押してください。

(3) 単に処理中で応答していない

大量の数式や外部データへのリンクを含むブックでは、開いた直後に計算が走っており、その間は操作できません。タイトルバーに「応答なし」と出ていても、しばらく待つと復帰することがあります。すぐに強制終了せず、まず数分待ってください。

アドインが原因かどうかを切り分ける:セーフモード起動

ここまでで直らない場合、アドイン(Excelに追加された拡張機能)が原因の可能性があります。セーフモードで起動すると、アドインを読み込まない状態でExcelが立ち上がるので、原因の切り分けができます。

方法A:Ctrlキーを押しながら起動する

  1. Ctrlキーを押したまま、Excelのショートカットをダブルクリックします。
  2. セーフモードで開くか尋ねる確認画面が出たら「はい」を押します。

方法B:コマンドで起動する

  1. Windowsキー+Rキーで「ファイル名を指定して実行」を開きます。
  2. excel /safe と入力して「OK」を押します(excelと/の間に半角スペースが必要です)。

セーフモードでは正常に動くなら、原因はアドインです。次の手順で犯人を特定します。

  1. 通常どおりExcelを起動します。
  2. 「ファイル」タブ→「オプション」→「アドイン」を開きます。
  3. 画面下の「管理」で「COMアドイン」を選び、「設定」を押します。
  4. チェックが入っているものをすべて外して「OK」を押し、Excelを再起動します。
  5. 症状が消えたら、1つずつチェックを戻して再起動し、症状が再発したものが原因です。
  6. 「管理」で「Excelアドイン」を選んでも同じ手順で確認します。

原因のアドインが分かったら、そのアドインの提供元に更新版が無いか確認してください。ウイルス対策ソフトがExcelに組み込む機能が原因になることもあります。

セーフモードでも症状が出るなら、アドインは無罪です。第7章の対処5(クイック修復)に進んでください。

なお、ウィンドウ自体は正常に開いていて、その中のシートだけが見当たらないという方は、ここまでの話とは原因が別です。シートの非表示や作業ウィンドウの状態が疑われるので、Excelのシートが消えた・表示されない原因と再表示する方法をご覧ください。

9. 症状⑤:最大化はできるが表示が崩れる・列幅やボタンがずれる

「最大化はできる。でも文字がぼやける、ボタンの位置がずれる、列幅がおかしい、図形のサイズが変わる」——これは別の原因です。

この章はExcel側の対処に絞って説明します。そもそも拡大率やマルチモニターの並べ方をどう設定するのが正しいのか、というWindows側の基礎から確認したい方は、Windowsマルチモニター設定完全ガイドを先に読むと、以下の話が理解しやすくなります。

ほぼ確実に、拡大率(表示スケール)の違うディスプレイを混在させていることが原因です。たとえばノートパソコンの内蔵画面が150%、外付けモニターが100%といった構成で、Excelのウィンドウを片方からもう片方へ移動したときに発生します。リモートデスクトップ接続でも、接続元と接続先の解像度が違うと同じことが起きます。

対処:Excelのオプションを「互換性」側に切り替える

  1. Excelの「ファイル」タブ→「オプション」を開きます。
  2. 「全般」を選びます。
  3. 「ユーザーインターフェイスのオプション」の中にある「複数のディスプレイを使用する場合」という項目を探します。
  4. 既定で選ばれている「最適な外観を得るために最適化」ではなく、「互換性のために最適化(アプリケーションの再起動が必要)」を選びます。
  5. 「OK」を押し、Excelを完全に終了してから起動し直します。

この設定は再起動しないと反映されません。設定を変えただけで「変わらない」と判断しないでください。項目名にも「アプリケーションの再起動が必要」と書かれているとおりです。

ここに書いた項目名・選択肢名は、マイクロソフトの公式ヘルプ(Officeのオプション「全般」タブ)の表記に合わせています。ただし実際の画面では、バージョンや更新チャネルによって「複数ディスプレイを使用する場合」「最適な外観を得る」「互換性の最適化」などと少しずつ違って見えることがあります。文言が一致しなくても、同じ位置にある2択のうち互換性側を選べば同じ効果です。

「互換性のために最適化」にすると、高解像度ディスプレイでの表示が少しぼやけて見えることがあります。ずれが直る代わりの副作用なので、どちらが自分にとってマシかで選んでください。

それでも直らない場合

  • Windows側の拡大率を揃える。「設定」→「システム」→「ディスプレイ」で、各モニターの「拡大/縮小」の値を同じにできないか検討します。作業しやすさとのトレードオフになります。
  • Excelを閉じて、使いたいモニター側で開き直す。移動させるのではなく、最初からそのモニターで開けば、ずれが起きないことがあります。
  • リモートデスクトップで使っている場合は、接続そのものの設定を見直す。接続元と接続先の解像度差が根本原因なので、対処は第11章にまとめました。
  • 3つとも効かない場合は、ディスプレイドライバーを更新する。拡大率の切り替えやモニター間の移動でExcelの表示が崩れる現象は、グラフィックドライバー側の不具合で起きていることもあります。パソコンメーカーのサポートページ、またはグラフィック製品(Intel・NVIDIA・AMDなど)の公式サイトから、お使いの機種向けの最新版が出ていないか確認してください。更新後はパソコンを再起動して様子を見ます。それでも変わらなければ、Excel単体の問題ではないので、他のアプリでも同じずれが起きていないかを確認したうえでメーカーサポートへ相談してください。

10. 症状⑥:「最小化」という言葉が指す4つの状態を切り分ける

「Excelが最小化ならない」「最小化から戻らない」という相談は、実は言葉が4つの意味で使われています。まず自分がどれなのかを確定させてください。

実際の状態 見え方 対処
(a) 最小化ボタンが効かない クリックしても何も起きない 裏でダイアログが開いている可能性。第8章へ
(b) 最小化したExcelが戻らない タスクバーにあるのにクリックしても出てこない 画面外に飛んでいる可能性が高い。第2章へ
(c) リボンが折りたたまれた タブの文字だけ残り、コマンドのボタンが消えた Ctrlキー+F1キー、または下記の手順
(d) 全画面表示モードになった リボン・数式バー・ステータスバーが全部消えた Ctrlキー+Shiftキー+F1キー、またはEscキー

(c) リボンが消えた場合

もっとも多いのが、Ctrlキー+F1キーを誤って押してしまったケースです。もう一度Ctrlキー+F1キーを押せば元に戻ります。

マウスで操作する場合は次のとおりです。

  1. いずれかのタブ(「ホーム」など)をダブルクリックすると、リボンの表示・非表示が切り替わります。
  2. または、リボンの右端にある「∨」(山かっこ)をクリックして「リボンの表示オプション」を開き、「常にリボンを表示する」を選びます。

この入口の位置は、バージョンによって次のように違います。

  • 現行のMicrosoft 365版:リボンの右端にある「∨」。選択肢は「常にリボンを表示する」「タブのみを表示する」「全画面表示モード」です。
  • Excel 2013〜2019:タイトルバーの右上、最小化ボタンの左にある「リボンの表示オプション」ボタン。選択肢は「リボンを自動的に非表示にする」「タブの表示」「タブとコマンドの表示」です。

この項目の名前と位置はMicrosoft 365の更新によって変わることがあります。見つからない場合は、まずCtrlキー+F1キーを試すのが確実です。

(d) 全画面表示モードから抜ける場合

リボンだけでなく、数式バーもステータスバーも消えている場合は全画面表示モードです。Ctrlキー+Shiftキー+F1キーで切り替わります。Escキーで戻ることもあります。

なお、リボンのコマンドとしての「全画面表示」ボタンは、Excel 2013以降のバージョンでは既定では見当たりません。ショートカットキーで操作するのが現実的です。

Excelに限らず、どのアプリでも全画面から抜けられない・逆に全画面にできないという状態が続く場合は、Windows側の表示設定やキーの割り当てが絡んでいることがあります。その場合はWindowsで全画面表示できない・フルスクリーンにならない原因と対処法もあわせて確認してください。

11. マルチモニター・リモート接続・持ち出しで飛ぶのを止める

「会社では正常なのに、ノートパソコンを持ち帰ると画面外に飛ぶ」「モニターを外した瞬間に消える」——このパターンは、根本的にはファイル側の記録の問題ですが、Windows側の設定で再発を抑えられます。

Windows 11のディスプレイ設定を確認する

  1. 「設定」→「システム」→「ディスプレイ」を開きます。
  2. 「マルチディスプレイ」または「複数のディスプレイ」という項目を展開します。
  3. 次の2つのチェックボックスを確認します。
    • 「モニターの接続に基づいてウィンドウの位置を記憶する」:オンにしておくと、モニターを再接続したときに元の位置へウィンドウが戻ります。
    • 「モニターの切断時にウィンドウを最小化する」:オンにしておくと、モニターを外したときにウィンドウが画面外に取り残されず、最小化されます。

項目名や階層はWindowsのバージョン・ビルドによって異なる場合があります。文言が違っても、意味が近い項目を探してください。見つからない場合は、Windowsを最新の状態に更新してから再度確認してみてください。

リモートデスクトップで特に再発しやすい理由

リモートデスクトップ接続は、このトラブルが最も繰り返し起きる環境です。理由は、接続のたびに「画面のサイズ」が変わり得るからです。ブックには前回の座標が記録されたままなので、次に違うサイズで繋ぐと、その座標が画面の外を指してしまいます。

具体的には、次のようなパターンで飛びます。

  • 接続元と接続先の解像度が違う。接続先(リモートのパソコン)の画面は、接続元の設定によって作られます。大きな画面から繋いだ日に保存したブックを、小さなノートパソコンから繋ぎ直すと、記録された座標が画面外になります。
  • 全画面で繋いだ日とウィンドウで繋いだ日が混ざる。リモートデスクトップを全画面表示で使うか、小さなウィンドウの中で使うかによって、リモート側から見える画面の広さが変わります。ウィンドウ表示で繋いでいる時に、全画面時の座標を持つブックを開くと、はみ出します。
  • 別のパソコンから繋ぎ直した。リモート先のExcelは「前回この座標だった」という記録をそのまま使うため、接続してくる端末が変わったことは考慮してくれません。
  • 接続中にモニターを増減させた。複数モニターを使う設定で繋いでいる場合、途中の構成変更がそのままリモート側のウィンドウ配置に響きます。

対策は、接続側の解像度を固定してしまうことです。リモートデスクトップ接続の画面で「オプションの表示」を開き、「画面」タブで解像度を指定します。毎回同じ大きさで繋がるようにしておけば、記録された座標と実際の画面がずれなくなり、再発が目に見えて減ります。複数の端末から繋ぐ場合は、すべての端末で同じ解像度に揃えておくのが理想です。設定の名称や位置は、お使いのリモート接続アプリやバージョンによって異なることがあります。

ドッキングステーション・USB-Cハブの抜き差し

ノートパソコンをドックやUSB-Cハブに繋いで外部モニターを使っている場合、ケーブルを抜いた瞬間がいちばん危険です。外部モニター側に置いていたウィンドウが、存在しなくなった座標に取り残されるからです。Windows側の「モニターの切断時にウィンドウを最小化する」が効けば救われますが、抜き差しが速いと間に合わないことがあります。

運用でできる対策は単純です。ドックから抜く前に、Excelのウィンドウを主モニター(ノートパソコン本体の画面)へ寄せておく。Windowsキー+Shiftキー+矢印キーで一発で移動できます。癖にしてしまえば、外出先で「開いたのに見えない」と焦る場面がほぼなくなります。

すでに飛んでしまった後なら、第2章の方法1(Windowsキー+「↑」)で引き戻せます。抜き差しのたびに毎回同じファイルが飛ぶなら、それはそのファイルに外部モニター側の座標が焼き付いているということなので、次の節へ進んでください。

会社と自宅でモニター構成が違う人への結論

会社では外部モニター2枚、自宅ではノートパソコン1枚——このように環境を行き来する場合、どちらか一方に合わせて座標を記録し直しても、もう一方でまた飛びます。追いかけるときりがありません。

答えは1つです。よく使うブックは、細かい位置やサイズを記録させず、最大化状態で保存し直しておく。これだけで、どちらの環境でも破綻しません。理由は次の節のとおりです。

それでもファイル側は直っていない

重要な注意です。この章で紹介したWindowsの設定・リモート接続の設定・抜き差しの運用は、いずれもWindows側の動作を変えるだけであり、ブックに記録された座標そのものは変わりません。特定のファイルが常に画面外へ飛ぶなら、結局は第4章の手順で「今の環境で最大化して上書き保存」し直す必要があります。

逆に言えば、モニター構成が変わる環境で使うファイルは、最大化状態で保存しておくのが最も安全です。最大化は「画面いっぱい」という相対的な指定なので、どんな解像度・どんなモニター構成でも画面内に収まります。細かい座標を記録すると、環境が変わるたびに事故が起きます。

これは人にファイルを渡すときにも、そのまま当てはまります。自分の環境で細かくサイズと位置を調整したブックを他人へ配ると、相手の画面構成によっては開いた瞬間に画面外へ飛びます。相手からは「もらったファイルが壊れている」ようにしか見えません。配布するファイルは最大化状態で保存しておくのが、最も親切で事故が起きない渡し方です。

12. Excel 2013以降のSDIを知ると、挙動の理由が分かる

ネット上には古い情報も多く残っているので、バージョンによる違いを整理しておきます。

Excel 2010まではMDI(マルチドキュメントインターフェイス)という方式でした。Excelを起動すると大きな親ウィンドウが1つでき、その中にブックの子ウィンドウが並ぶ構造です。

Excel 2013以降はSDI(シングルドキュメントインターフェイス)に変わりました。ブック1つにつき、リボンも数式バーも備えた独立したウィンドウが作られます。

項目 Excel 2010まで(MDI) Excel 2013以降(SDI)
ウィンドウの構造 親ウィンドウの中に子ウィンドウ ブックごとに完全に独立したウィンドウ
リボン 親ウィンドウに1つ ブックごとに1つずつ
別モニターへの配置 親ウィンドウの中でしか動かせない ブックごとに好きなモニターへ置ける
タスクバー まとまって見えることが多い ブックごとに項目が並ぶ

実務上の影響

  • 同じコマンドでも、結果の見え方が変わる。たとえば「表示」タブの「整列」(すべて整列)は、SDIになった今も現存し、ちゃんと動きます。ただしMDI時代のように1つの親ウィンドウの内側で子ウィンドウが分割されるのではなく、独立したウィンドウどうしが画面上に並べ直される形になります。並び方は変わりますが、画面外へ出たウィンドウを画面内へ戻す手段としては有効です(第2章の方法4)。「MDI時代の機能だからもう使えない」と書いている解説を見かけますが、それは誤りです。
  • 1つのブックだけ最大化することが可能。SDIでは各ウィンドウが独立しているため、ブックごとにサイズを変えられます。逆に言えば、ブックごとに症状が出るということでもあります。
  • ファイルを開くと既存のExcelが使われる。第3章・第5章で触れたとおりです。この挙動は、Excelを起動するときにコマンドラインで /x を付けると別のプロセスとして起動できますが、エクスプローラーからファイルを開く操作では引き続き既存のプロセスが使われる場面があります。通常の利用ではここまで踏み込む必要はありません。

ウィンドウの位置がブックに記録される仕組みの図

13. 原因別・対処の早見表

ここまでの内容を1枚にまとめます。

起きていること 最も可能性の高い原因 最初にやること 効かない対処
特定のファイルだけ小さい ファイルに小さいサイズが記録されている 開く→最大化→上書き保存 Excelのオプション変更・ショートカットの設定
特定のファイルだけ画面外 ファイルに画面外の座標が記録されている Windowsキー+「↑」で戻す→上書き保存 ディスプレイ設定だけの変更(ファイルは直らない)
新規ブックも含めて全部小さい Excel側の既定状態・裏に残ったプロセス Excel全終了→最大化して正常終了 ファイルの作り直し
最大化ボタンが反応しない 裏のダイアログ・保護ビュー・アドイン Escキー→保護ビュー確認→セーフモード起動 上書き保存・ウィンドウサイズの調整
最大化はできるが表示が崩れる 拡大率の違うディスプレイの混在 オプションで「互換性」側に変更しExcel再起動 ファイルの保存し直し
リボンが消えた Ctrlキー+F1キーの誤操作 もう一度Ctrlキー+F1キー Officeの再インストール
全画面から抜けられない 全画面表示モード Ctrlキー+Shiftキー+F1キー ウィンドウのドラッグ操作
ファイルが数百個ある 全ファイルに古い記録が残っている コピーを作ってVBAで一括処理(第6章) 1つずつ手作業(現実的でない)

14. やってはいけないこと・進んでよい条件

この症状は、対処の順番を間違えると余計な手間とリスクを背負います。以下は避けてください。

やってはいけないこと

  • いきなりOfficeを再インストールする。ウィンドウサイズの記録はファイル側にあるので、Officeを入れ直しても「特定のファイルだけ小さい」は直りません。設定やアドインを失うだけです。
  • ネットで見つけたレジストリの変更を試す。レジストリの編集は、間違えるとWindowsやOfficeが起動しなくなる可能性があります。しかもOfficeに関するキーの場所はバージョンによって異なり、他人の環境の手順が自分に当てはまる保証がありません。この症状は、レジストリを触らずに第4章の手順で直せます。
  • ファイルの中身を新規ブックに全部コピーして作り直す。質問サイトなどで対処として提案されているのを見かける方法ですが、数式の参照・条件付き書式・名前の定義・マクロなどが壊れるリスクがあります。最大化して上書き保存するだけで済むものに、この手段を使う必要はありません。
  • ブックのXMLを直接書き換える。第3章で紹介した確認方法は「読むだけ」にとどめてください。書き換えて戻すとブックが開けなくなる可能性があります。
  • 共有ファイルを断りなく大量に上書き保存する。更新者と更新日時が全部自分に書き換わります。第6章の一括処理は、必ずコピーに対して行ってください。

次の段階へ進んでよい条件

やろうとしていること 先に済ませておくべきこと
VBAでの一括処理 フォルダーごとバックアップ+少数ファイルでの試行
アドインの無効化 セーフモードで症状が消えることの確認
Officeのクイック修復 セーフモードでも症状が出ることの確認
Officeのオンライン修復 クイック修復で直らないことの確認+作業データの保存
Officeの再インストール ライセンス情報(サインインに使うアカウント)の確認

再発を防ぐために覚えておくこと

  • モニター構成を変えた日は、その場で直す。モニターを買い替えた、在宅勤務を始めた、リモートデスクトップを使い始めた——こうした変化の直後は、飛ぶファイルが一気に出ます。その週のうちに、よく使うファイルだけでも第4章の手順で直しておくと、その後の数か月が楽になります。
  • 人に渡すファイルは、細かい位置を記録させず最大化状態で保存する(理由は第11章)。
  • 新規作成の元になるひな形を1つ直しておく(手順は第6章の末尾)。

【PR】この見出し内のリンクは広告(アフィリエイト)です。

🛒 関連商品をチェック(Amazon・楽天市場)

15. よくある質問

Q1. Excel Online(ブラウザ版)でも同じ症状は起きますか

ブラウザ版のExcelには、アプリのウィンドウを最大化・最小化するという概念自体がありません。ブラウザのウィンドウサイズがそのまま表示領域になります。ブラウザ版で「小さい」と感じる場合は、ブラウザ側の表示倍率(Ctrlキー+「0」で100%に戻ります)やブラウザウィンドウのサイズをご確認ください。

Q2. 複数のブックを開くとき、1つだけ直せば全部直りますか

直りません。サイズと位置はファイルごとに記録されているので、ファイルの数だけ直す必要があります。ただし第3章で説明した「継承」の挙動があるため、先に正常なブックを最大化して開いておくと、後から開いたブックも最大化されて見えることがあります。これは一時的な見た目の話で、ファイルは直っていません。数が多い場合は第6章の一括処理を検討してください。

Q3. 自分が作ったファイルではないのに、なぜ小さく開くのですか

ファイルを作った人のパソコンで記録されたサイズと位置が、そのままファイルに入って手元に届いているからです。作成者が小さめのウィンドウで作業していた、あるいは4つ並べたモニターの右端で作業していた、といった事情がそのまま再現されます。ファイルが壊れているわけでも、あなたのExcelがおかしいわけでもありません。第4章の手順で自分の環境に合わせて保存し直せば直ります。

Q4. 最大化して保存したのに、次に開くとまた小さくなります

保存が成功していない可能性が高いです。ファイルの更新日時が保存した時刻になっているか、タイトルバーに「読み取り専用」と出ていないかを確認してください。詳しい条件は第4章の「保存しても直らない・記録されないケース」の表にあります。

Q5. .xls や .xlsm でも同じ手順で直りますか

手作業で直す第4章の手順(開く→最大化→上書き保存)は、どの形式でも同じです。違いが出るのは第6章の一括処理の方で、掲載したコードは "*.xlsx" と書いてあるため .xlsx しか拾いません。他の形式も処理したい場合は、この部分を "*.xlsm""*.xls" に書き換えて、拡張子ごとに分けて実行してください。

ただし注意点があります。.xlsm(マクロ入りブック)は、開いた瞬間にそのブック自身のマクロが動く可能性があります。中身が信頼できるファイルだけに限定してください。.xls(Excel 2003以前の古い形式)は、保存時に形式の確認メッセージが出て処理が止まることがあります。件数が少ないなら、これらは一括処理に混ぜず手作業で直す方が安全です。

Q6. OneDriveの自動保存がオンのブックでは、最大化状態はいつ記録されますか

ここは意図どおりにならないことがある部分です。自動保存は主にセルの編集など「中身の変更」を検知して働きます。ウィンドウを最大化しただけでは中身が変わっていないため、その変更が保存対象として拾われず、記録が残らないことがあります。

確実にするには、最大化した状態でCtrlキー+Sキーを明示的に押すか、どこかのセルを一度編集して元に戻すなどして、保存が走る状態を作ってください。そのうえでいったんブックを閉じ、開き直して確認するのが唯一の確かめ方です。それでも安定しない場合は、第4章の表にあるとおり、いったんローカルのフォルダーへコピーして直し、OneDriveへ戻す手順で検証してください。共同編集中のブックでは、他の人の操作が後から上書きすることもあります。

Q7. Mac版のExcelでも同じですか

「ウィンドウのサイズと位置はブックファイルに記録される」という原理は同じです。ファイル形式(.xlsx)が共通なので、Windowsで保存された座標をMacで開いたときに違和感が出ることもあります。直し方も同じで、開いて画面いっぱいに広げ、上書き保存すれば記録し直せます。

ただし操作は別物です。Macには「最大化」ボタンがなく、緑のボタンはフルスクリーン(別の空間へ移動する表示)になります。ウィンドウを画面いっぱいに広げたいだけなら、緑のボタンをOptionキーを押しながらクリックするか、ウィンドウの端をドラッグして広げてください。この記事で紹介したWindowsのショートカット、タスクマネージャー、ショートカットの「実行時の大きさ」、Officeのクイック修復といった手順はMacには当てはまりません。メニューの名称や挙動はバージョンによって異なるため、詳細はお使いの環境の公式情報をご確認ください。

Q8. VBAのマクロを実行するのが怖いです。他に方法はありませんか

あります。第6章の末尾で紹介したとおり、実際によく開くファイルだけを手作業で直すのが最も安全で、多くの場合これで十分です。300個あっても日常的に開くのはその一部なので、開くたびに最大化して上書き保存する運用を数週間続ければ実質的に解決します。

Q9. Excelのオプションに「ウィンドウを常に最大化して開く」という設定はありませんか

お使いのバージョンによって画面が異なるため断定はできませんが、一般的なExcelのオプション画面に、そうした一括設定の項目は用意されていません。これは不親切に見えますが、第3章の原理どおりサイズと位置がファイル側の情報として設計されているためです。設定画面を探して見つからなかったのは、探し方が悪かったからではありません。最新の仕様については公式情報をご確認ください。

16. まとめ

この症状のほぼすべては、「ウィンドウのサイズと位置はExcelではなくブックファイルに記録されている」という一点から説明できます。

  • 特定のファイルだけおかしいなら、そのファイルに記録が入っている
  • 直すには、開いて最大化して必ず上書き保存する
  • ショートカットの「実行時の大きさ」は、ファイルのダブルクリックには届かない
  • 画面外に飛んだら、まずWindowsキー+「↑」で引き戻す
  • ファイルが大量にあるなら、コピーを作ってからマクロで一括処理する
  • 最大化ボタンが反応しないのは別問題。セーフモードで切り分ける

今すぐやること:Excelをすべて閉じて、問題のファイルを1つだけ開き、最大化してCtrlキー+Sキーを押してください。これで直るファイルが大半です。それでも直らなければ、この記事の第4章の表で「保存が通らない条件」に当たっていないかを確認してください。

なお、この記事に記載した画面の名称・メニューの階層は、Excelのバージョン・更新チャネル・Windowsのビルドによって異なる場合があります。表示が一致しない場合は、お使いの環境の公式情報をあわせてご確認ください。

Check Also

Excelで文字が白くなって見えない時の対処法

Excelで文字が見えない・白くなる時の対処法|数式バーには表示される

まず数式バーを見てください。該 …