Excel2010でリボンの展開、最小化をマクロでユーザーフォームにはりつけたコマンドボタンから実行したい。
基礎的な勉強を全くしていないので、うまく説明できるか自信がないが質問内容は以下の通りです。
リボンの展開、最小化は、「コントロールキーとF1キーを同時に押す、をコードにすればよい」というのをみつけました。
そこでシートにボタンを張り付けて次のマクロで展開、最小化ができました。
Sub ボタン1_Click()
Application.SendKeys Keys:="^{f1}", Wait:=True
End Sub
しかし、これはユーザーフォームのコマンドボタンでは動きません。
Private Sub CommandButton1_Click()
Application.SendKeys Keys:="^{f1}", Wait:=True
End Sub
「Private Sub 」だからかと思うが、その先がわかりません。
ちなみに似たような動作で、全画面表示で次のようなものはどちらでも使えます。
Sub ボタン2_Click()
If Application.DisplayFullScreen = True Then
Application.DisplayFullScreen = False
Else
Application.DisplayFullScreen = True
End If
End Sub
この場合はユーザーフォームにはりつけても動きます。
ど素人にお知恵を貸してください。
No.2ベストアンサー
- 回答日時:
今、ヘルプを確認しましたら、
SHOW.TOOLBAR(ツールバー, 表示,……)
でした。
TOOLBARS ではなく、TOOLBARでしたので、以下のように訂正します。
----
Sub HiddenRibbon()
リボンを隠す
' Application.DisplayFullScreen = False '全表示していると動かないという話も聞きました。ダメな場合は、ここも外してください。
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""RIBBON"",FALSE)"
End Sub
Sub ShowRibbon()
リボンの再表示
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""RIBBON"",TRUE)"
End Sub
> Application.SendKeys Keys:="^{f1}", Wait:=True
なお、UserFormからは動かないのは、UserFormが、アクティブになっているからだと思います。OSが、64bit では動きませんが、標準的な環境なら、以下のようにすれば動くはずです。
Private Sub CommandButton1_Click()
AppActivate Application.Name
CreateObject("Wscript.Shell").SendKeys "^{F1}", True
End Sub
できました。
前段、修正したら動きました。しかし、やりたかったことはリボンだけを隠す、FullScreenの動作と少し違います
そこで後段、これで希望どおりの動きになりました。
なおこの場合、UsewrFormのShowModalをFalseにする必要がありTrueのままでは動きませんでした。
再三のご教示ありがとうございました。
No.1
- 回答日時:
>Excel2010でリボンの展開、最小化をマクロでユーザーフォームにはりつけたコマンドボタンから実行したい。
というのでしたら、Excel 2010では試してはいませんが、これで動くはずですが……。
Sub HiddenRibbon()
リボンを隠す
Application.ExecuteExcel4Macro ("SHOW.TOOLBARS(""RIBBON"",FALSE)")
End Sub
Sub ShowRibbon()
リボンの再表示
Application.ExecuteExcel4Macro ("SHOW.TOOLBARS(""RIBBON"",TRUE)")
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】リボン、行列、数式・ステータスバを非表示に 4 2022/12/12 07:32
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) エクセルで、1つのセルで上書き足し算して セルの範囲を指定できますか? パソコン初心者です。 お時間 3 2023/07/05 06:13
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/08 15:45
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドボタンを押すたびに大...
-
スクロールしてもボタンを常に...
-
Accessのコマンドボタンの立体...
-
エクセルVBA シート上にあるコ...
-
ShowAllDataのエラーを回避したい
-
Excel:コマンドボタンの移動
-
エクセルVBA
-
押したボタンの位置取得(共通の...
-
コマンドボタンがあるかどうか...
-
EXCELでNo.を変えて印刷したい
-
Excel VBA --- コマンドボタ...
-
Accessユーザーフォームでコマ...
-
エクセルVBAでOptionButtonのオ...
-
Excelのマクロでコマンドボタン...
-
エクセルのマクロでスライドシ...
-
ROCKET MOUSEの使い方
-
VisualStudioCodeで、Excelのク...
-
チェックボックスで「いずれか1...
-
Wordでドラッグした文字列を括...
-
PPTのコマンドボタンがクリック...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel:コマンドボタンの移動
-
コマンドボタンを押すたびに大...
-
スクロールしてもボタンを常に...
-
押したボタンの位置取得(共通の...
-
エクセルVBAでOptionButtonのオ...
-
ShowAllDataのエラーを回避したい
-
エクセルVBA シート上にあるコ...
-
コマンドボタンがあるかどうか...
-
PPTのコマンドボタンがクリック...
-
Excel VBA --- コマンドボタ...
-
エクセルVBA
-
Accessのコマンドボタンの立体...
-
エクセルのコマンドボタンの位...
-
実行中の作業を中止させるコマンド
-
EXCELでNo.を変えて印刷したい
-
コマンドボタンで「終了ボタン...
-
マクロ登録ボタンに色をつける
-
Accessユーザーフォームでコマ...
-
[ExcelVBA] コマンドボタンを押...
-
コマンドボタンがきかなくなる
おすすめ情報