- ベストアンサー
Excel全画面表示のためのVBAコマンドは?
- Excelの全画面表示モードにするためには、VBAコマンドActiveWindow.WindowState = xlMaximizedを使用します。
- 通常、Excelの全画面表示モードにすると、編集モードが解除され、リボンが表示されます。しかし、VBAで全画面表示にすると、編集ができないBの状態になります。
- したがって、Excelの全画面表示モードにするためには、ActiveWindow.WindowState = xlMaximizedを使い、編集も可能なAの状態にする必要があります。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>> 手動とVBAでなぜ全画面のボタンが異なるのか? これについては、厳密にはお使いのコードのうち、リボン非表示部はvbaではなく、古い仕様のExcel4.0マクロなので、そのあたりではないかと思います。 https://excel-ubara.com/excelvba4/EXCEL_VBA_448.html リボンの非表示ではなく、最小化するコードならどうでしょうか。 https://lilia-study.com/excel/excel-vba/application/application-method/minimizeribbon/
その他の回答 (2)
- kon555
- ベストアンサー率51% (1842/3559)
>>Bの画面では、拡大縮小終了が出来ても編集ができません。 Excelの編集自体がロックされる、という事でしょうか? もし他に省略しているコードなどがないなら、それはおかしな挙動になっています。貴方のバージョン故か、具体的な原因は分かりませんが、そのようなコードにはなっていませんから。 まずは切り分けのため、各行をそれぞれコメント化するなどで無効にしてみて、どの行が原因で操作不能になっているかを判別してみて下さい。 また、もし書かれている内容以外にもコードがあるなら、全文を公開した方が適切な回答は得やすくなると思います。
補足
解答ありがとうございます。 編集ロックというよりは、B画面の場合、右上のアイコンの中に編集画面に移動するボタンが表示されないということです。 手動で全画面にした場合はA画面になり「・・・」のボタンでリボン表示が可能ですが、VBAで全画面にした場合、B画面になり「最小化」「縮小」「閉じる」のボタンしか表示されず編集が出来ません。なお、EXCELは2016で、別のパソコンでも同じ現象です。 疑問は 1.手動とVBAでなぜ全画面のボタンが異なるのか? 2.手動と同じようになるVBAのコマンドは有るのか? ということです。 なお、今回の私のプログラムは、画面中にリボン再表示のボタンを追加することで対応することとしました。
- kon555
- ベストアンサー率51% (1842/3559)
最後の Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" がリボンの非表示化する部分ですから、削除してみて下さい。 ちなみに「 Application.DisplayFormulaBar = False」は数式バーの非表示化「ActiveWindow.DisplayHeadings = False」が行列番号の非表示化です。 それぞれ意図した挙動ならいいのですが、ご不要ならこれも削除してみて下さい。
補足
ご回答ありがとうございます。 このコマンドをなくすと、タブも残ってしまいます。 目的は、全画面にしながら、必要な時にタブ、リボンが使いたいということです。Bの画面では、拡大縮小終了が出来ても編集ができません。
お礼
何度も解答いただきありがとうございます。 貴案の最小化コードは、添付写真ではタブが残ります。 今回の場合は、出来るだけ面積を広くしたくて元のコードをとしました。 リボンの再表示は、ボタンを設置しクリック一つで表示できるのでこれで良しとしました。(疑問は残ったままですが) 「Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)"」