さわってますが、結局仕事に簡単に直結するのはExcelとVBAだと思います。この記事では、Excelのリボン、数式バ-、スクロールバーなど、Excelのいろんなインターフェースを非表示にするVBAプログラムを紹介します。前置きExcelでVBAプログラムを作るとき、とっても気を使うExcelってもともといろいろなインターフェースがあって、ユーザの自由度が高いですよね。リボンでフォントの設定とか簡単にできちゃうし、開発タブを有効にしていれば追加でVBAプログラム書けちゃうし。セルやシートをロックして入力を制限するは有効な手段ですが、そもそも設定が手間。ロックするくらいしかできないので、自分の思うどおりに開発ができなかったりして、兼ね合いをとるのがとても面倒です。モーダルウィンドウを表示した操作を取り込む場合、とても気を使います。(僕だけかもしれませんが。)個人的には、Excelはユーザが意図しないアクションを起こす可能性が非常に高く、開発者から見たときにとても気苦労が多いもの、だと思います。Excel自体を非表示にしフォームだけ表示するVBAプログラム等もありますが、Excel自体の起動・終了が見えません。Excelのインスタンスが残ってしまい、新たな予期しないトラブルが起こってしまう可能性もあります。結果、Excelを表示したまま、インターフェースを非表示にしちゃえばいいのでは!?という結論にいたりました。(笑インターフェースを無効にするメリットエラー時にユーザがExcelを正常に終了できる前述のとおり、Excel自体を非表示にしてしまうとExcelプロセスが起動しているか停止しているかわかりません。プログラムが異常終了し、Excelプロセスが起動したままだとその後Excelが起動しなくなったり、意図しないトラブルに発展する可能性があります。Excel自体は表示させておくことで、VBAプログラムが異常終了してもウィンドウの「×」ボタンからユーザが正常にExcelを終了させることができます。Excelの機能を有効に利用できるExcel自体を非表示にしてしまうと、ワークシートを使ったプログラムの作成が単純に難しくなります。非表示で見えないので。するとしてもシートに順番に値を書き出して、CSVに出力するくらいではないでしょうか。Excel上でVBAプログラムを作っているのだから、Excelのプログラムを使用しない手はありません。条件付き書式、ピポットテーブル、グラフなどは、Excelでないと使えません。先日本社に戻ったとき、お世話になった新人研修の講師の方と話す機会がありました。そこで最近のこととかをつらつら話していると、「Excelで自分だけのライブラリ作っちゃえばいいじゃん」といわれました。この一言からいろいろ考えた結果、やってみたのが今回の記事です。←?インターフェースを非表示にするここからが本編です。基本的には1行のプログラムです。簡単なので、ぜひやってみてください。検証はExcel2007で行っています。リボンを非表示にする一番厄介なリボンを非表示にします。プログラムもリボンの非表示が最もややこしいです。"SHOW.TOOLBAR(""Ribbon"",False)"リボンを非表示にするにはExcel4.0形式のVBAプログラムを実行します。Application.ExecuteExcel4Macro(String)メソッドでExcel4.0形式でVBAプログラムを実行します。引数には、Excel4.0形式で実行するプログラムを文字列で指定します。SHOW.TOOLBAR(""Ribbon"",False)でリボンが非表示になります。シートタブを非表示にするシートタブとは、Excel画面下部のワークシート一覧を表示するタブです。FalseActiveWindowは、現在開いているExcelワークブックのウィンドウを指します。オブジェクトはWindowsオブジェクトです。Windows(ワークブック名)で、ウィンドウを指定することができます。インターフェースはWindowsオブジェクトに多く付いていますので、Excelのインターフェースを触る場合は覚えておいてください。見出しを非表示にする見出しとは、A,B,C,D,....、1,2,3,4,....というように、画面上、画面左にある見出しになります。Falseシートタブと同じです。ワークブックウィンドウ内のインターフェースは、だいたいWindowsオブジェクトで操作できます。スクロールバーを非表示にするスクロールバーは、縦のスクロールバーと横のスクロールバーで個別に設定ます。FalseこちらもWindowsオブジェクトの操作になります。スクロールバーを非表示にしても、スクロールは可能です。スクロールも禁止するには、次の通りスクロール可能エリアを指定します。ActiveWindow.VisibleRange.AddressWorkSheetオブジェクトのscrollAreaプロパティにスクロール可能エリアのアドレスを指定します。例2では、ActiveWindow.VisibleRange.Addressを使用し、画面に表示されているセル範囲のアドレスを取得しています。数式バーを非表示にする数式バーは、文字や数式を入力するためのツールバーです。通常リボンの下にあります。これを非表示にします。False数式バーはApplicationオブジェクトで制御します。やり方は他のものとほとんど変わりません。ステータスバーを非表示にするステータスバーは画面下部にあるツールバーです。シートの表示形式を変えたり、ズームしたりすることができるツールバーです。FalseステータスバーもApplicationオブジェクトで制御します。ワークブックウィンドウを非表示にする上記のすべてを非表示にすると、セルの選択と右クリックくらいしかできないようになります。最後に、このセル自体も非表示にし、ウィンドウ枠だけになるようにしたいと思います。False表示されているセルは、ワークブック内のウィンドウに表示されているので、Windowsオブジェクトを非表示にします。ワークブックを非表示にすると、表示するときにWindowsオブジェクトの名前(≒ワークブック名)、もしくは順序番号が必要となるので注意して下さい。以上、どうだったでしょうか。皆さんも試してみてください。15:00【VBA】1行でExcelのいろんなインターフェースを非表示にする。Tweet広告を非表示にする関連記事2018-09-23知っておくべきgccオプション三連休で何かしないとな、とおもいgccのmanページを読んでいた...2016-04-09Vagrant始めました。Vagrant使ってますか?←一回使ってみたかった。Tips】段落の左側に表示される中点の消し方に物申す今日から先輩社員として頑張ります。momoiro_tjです。気づけば年の瀬ですね。Vagrant始めました。知っておくべきgccオプション南国っぽい言葉の頭に「エゾ」ってつけると一気に南国感が消えるブログ名変更しました月別アーカイブ参加グループWindows開発者はてなブログをはじめよう!momoiro_tjさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。