苦労してExcel-VBAを組み込んだエクセルファイルを他人に渡して使ってもらうと、エラー表示になったと言われたことありませんか?
原因は簡単で、エクセル操作をオリジナル入力画面のユーザーフォームを使用して、全ての操作を行うようにしていますが、何らかの理由でエクセルの操作パネルメニュー(リボンメニューバー)を使って操作されることが原因です。
解決方法は簡単で、リボンツールバーを自動的に非表示にしてしまうVBAコードを組み込んでおくだけで解決しますのでご紹介いたします。
SHOW.TOOLBARでメニューリボンを非表示にする
エクセル通常ワークシートは、下記のようにリボンツールバーといわれる操作パネルが表示されているので、様々な操作が可能になっています。

このままでは当たり前ですが、リボンツールバーを使う事で自由に意図しない操作をされてしまいますので、消してしまいましょう。

こうなれば、意図しない操作ができなくなるので作成したユーザーフォームからの操作のみ、またはワークシート上に配置したコマンドボタンからの操作しかできなくなります。
VBAで自動処理
方法は、エクセルファイルを開くと自動的にメニューリボンを非表示にすることができ、SHOW.TOOLBAR関数を使用します。
Private Sub Workbook_open()
Application.ExecuteExcel4Macro “SHOW.TOOLBAR(“”Ribbon””, False)”
End Sub
- エクセルファイルが開いたら
- リボンツールバーを非表示にする
- マクロ記録終了
たったこれだけでエクセルを開くと自動的にメニューバー(リボンツールバー)を隠してくれます。(非表示化)

念の為に、ワークシート上かユーザーフォームにメニューバー(リボン)を再表示する為のコードを記述したコマンドボタンを準備しておく事も必要です。
非表示にするには”False”、表示するには”True”を指定するだけです。
Private Sub CommandButton1_Click()
Application.ExecuteExcel4Macro “SHOW.TOOLBAR(“”Ribbon””, True)”
End Sub
手動処理
一応参考までに、エクセルVBAコードを使わなくても標準機能として、「リボンの表示オプション」より、メニューリボンを非表示化することができます。


実はこの方法以外にも誤って非表示化してしまって、消えちゃったって言われることありますよね。
意外と知られていないのですが、「ホーム」「挿入」・・・と続く部分をタブ名と言いますが、ここをダブルクリックするとメニューリボンが非表示になるんです。
このことを知らないと、何らかの理由で知らず知らずにダブルクリックしていて、メニューリボンが消えた!って慌ててしまう事あるんですね。
エクセルファイルを様々な人と共有することあると思いますので、意図しない操作って意外と多いので、対策は必要ですよ!
また、リボンツールバー非表示と一緒に使いたいのが、✖印を使用停止にしたり、エクセルワークシートの下に表示されるシート名の部分を非表示化も便利機能ですよ。






よく見られているページ
-
エクセルの計算式の値を数字として読み取るVALUE関数
-
VBAの画面のちらつきがたった1行で解決して処理高速化する方法
-
COUNT関数を使って参加人数を自動的に数えるエクセル関数使用法
-
エクセルの時刻表示を0:00ではなく24:00にする方法
-
チェックボックスでチェック有と無しそれぞれの処理を変える方法
-
1クリックで上書き保存してエクセルファイルを閉じる方法
-
エクセル計算式が#VALUE!エラーになったセルを空欄にする方法
-
条件に一致したセルを繰り返し探してVBAで文字色を変える方法
-
コマンドボタンの色をクリックするたびに黒色と赤色を入れ替える方法
-
エクセルシートの保護したらマクロエラーになった時のVBA対処法


新着ページ