Excelシート上に、フォームコントロールのボタンを置いてマクロを登録すると
実行するのに便利なのですが、
スクロールやオートフィルタで特定の値でフィルタした時などに、
ボタンが見えなくなってしまいます。
ウィンドウ枠の固定で常に固定される領域にボタンを置くのも手なのですが、
どうしてもレイアウト的に無理がある時もあります。
ちなみに、A列だけボタンを置く領域とするとボタンが縦に配置できますが、
行数が多い表の場合、フィルタやスクロールでボタンが見えなくなってしまいます。
常にボタンを見えるようにする方法はないでしょうか?
ボタンを配置したオブジェクトを集計表の上に浮かせて置ければ良さそうなのですが。
(浮かせて、という意味は、自由にマウスでボタンセットを移動できれば表の邪魔にならないといういう意味です。)
No.1ベストアンサー
- 回答日時:
こんばんは。
どの様な方法が良いかにもよりますが、
シート上以外では、ダメでしょうか?
小さなユーザーフォームを表示しておく方法。フォームをモードレスで表示
https://atmarkit.itmedia.co.jp/ait/articles/1410 …
リボンにマクロのボタンを設置する方法、
https://hamachan.info/win7/excel/macro.html
ありがとうございます。
>小さなユーザーフォームを表示しておく方法
この方法が画期的な発見でした。
今までは、例えば”E2”セルの値に応じて処理をするマクロ1を設定していたのですが、今回以下の様にコンボボックスで選択肢を用意出来る事が分かりましたので、
Private Sub UserForm_Initialize()
With ComboBox1
.AddItem "りんご"
.AddItem "みかん"
.AddItem "バナナ"
.AddItem "マンゴー"
End With
End Sub
この値に応じてマクロ1を実行するにはどうしたら良いでしょうか?
ちなみにE2の値に応じて動作するマクロは以下の様なソースです。
Sub マクロ1()
Select Case Range("E2").Value
Case "りんご"
処理
Case "みかん"
処理
Case "バナナ"
処理
Case "マンゴー"
処理
End Select
End Sub
UserForm1内のComboBox1に応じて、マクロ1の分岐が出来ないでしょうか?
No.7
- 回答日時:
#5です
>リボンの設定は各PCで行う必要がありそうですね。
いえ、設定されたブックが開く時のインスタンスで設定するので
そのブックのみに反映されます。従ってPC設定は不要ですが、バージョンの互換性には問題があり、現行バージョンで作成すると2016以降なら、、みたいになると思います。(確認していません)
いづれにしても、不具合対策でWindowsAPIでレジストリー登録したりする必要もあるので気軽ではありませんね。
そのようなことも出来る程度の認識で、将来、アプリやアドインなどとして配布を考えた時に思い出せれば、幸いです。
ありがとうございます。
今の環境は、全スタッフOffice365で統一されてますので、
ブック毎にリボン設定が活きるのであれば活用できそうです!
No.5
- 回答日時:
こんばんは
直接の回答ではありません。
代替え案として、少しハードルが上がりますが、リボンをカスタムしてユーザーフォームの様にすることが出来ます。
リボンにはボタン、リストボックスやコンボボックスなどなどコントロールを作成配置する事が可能でそこからVBAを実行する方法もあります
不要な既存機能(リボン操作)を排除する事も可能なので、専用アプリケーションのような仕上がりになります。
参考 https://www.ka-net.org/blog/?cat=1
No.4
- 回答日時:
>フォームコントロールのボタンを置いてマクロを登録すると
これを
Excel VBA 右クリックメニューにマクロ実行メニューを追加する
https://kosapi.com/post-978/
を
Excel VBA ファイルを開く時にマクロを自動実行する方法
https://officedic.com/excel-vba-fileopen-autoexe …
で設定し
Excel VBA ファイルを閉じる時にマクロを自動実行する方法
https://officedic.com/excel-vba-fileclose-autoex …
で解除する。
右クリックに追加する呼び出すマクロは従来あるもので宜しいのでは?
なるほど。右クリックメニューで実行できれば、画面の位置に関わらずいつでも実行できますね。
色々応用できそうです。
ありがとうございます。
No.3
- 回答日時:
こんばんは。
ComboBoxの他に、コマンドボタンを配置した方が無難かと思います。
https://support.microsoft.com/ja-jp/office/%E3%8 …
Private Sub CommandButton1_Click
Select case ComboBox1.Value
Case ”リンゴ”
処理
Case "みかん"
処理
End Sub
なるほど!
選択肢をユーザフォーム上で行うなら、実行ボタンも同じフォームで行う方が正しそうですね。テスト成功しました。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) マクロでボタンにつける名前がどこに設定されているかわからないケースがありました。 1 2023/06/19 19:37
- Visual Basic(VBA) 【ExcelVBA】動的にボタン、ボタン名を生成できますか? 7 2022/04/08 12:54
- Excel(エクセル) 【Excel】指定のセル内容を基に別シートのセルを検索して選択する【VBA】 1 2022/06/16 16:16
- Visual Basic(VBA) VBA 画面上のカーソルに文字数字を入力するコードを教えて下さい 1 2022/10/30 10:31
- オンラインゲーム ゲーム(バトロワ)についてアドバイスください 1 2022/11/16 10:29
- オンラインゲーム DBDで貞子の具現化ボタンと念写について 1 2022/04/02 01:28
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- gooブログ Twitterの動画画面をgooブログに埋め込めない 4 2022/06/03 16:40
- マウス・キーボード キーボード設定で困っています。長文です。 2 2022/12/10 12:44
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教える店舗&オフィスのセキュリティ対策術
中・小規模の店舗やオフィスのセキュリティセキュリティ対策について、プロにどう対策すべきか 何を注意すべきかを教えていただきました!
-
スクロールしてもボタンを常に表示させたい。Excel2002
Excel(エクセル)
-
excel スクロールしても常にボタンが表示される様にしたい。
PowerPoint(パワーポイント)
-
Excel:コマンドボタンの移動
Excel(エクセル)
-
-
4
エクセルで、マクロボタンの表示位置を固定
その他(Microsoft Office)
-
5
Excel フォームで作成したボタンを固定したい
Excel(エクセル)
-
6
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
7
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
8
エクセルでオブジェクトを常に表記する
Excel(エクセル)
-
9
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
10
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
11
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
12
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
13
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
14
コマンドボタンやイメージにマウスをのせるとボタン名を表示したい
Excel(エクセル)
-
15
ユーザーフォームをホイールでスクロールする方法(Excel2000VBA)
Excel(エクセル)
-
16
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
17
VBA シートのボタン名を変更したい
Visual Basic(VBA)
-
18
値を入力後、自動的にアクティブセルが移動するマクロ
Excel(エクセル)
-
19
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
20
エクセルのコマンドボタンの位置をVBAで指定できませんか?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
フォームコントロールから作っ...
-
UPS警告音を止めたい
-
複数シートのボタンに同一の動...
-
オブジェクト名をVBAで指定...
-
ボタンを画像で作るか、CSSでデ...
-
Excelシート上のマクロを登録し...
-
パナソニックKX-PW22CLHの電話...
-
VBAでクリアボタンのみ残してシ...
-
Accessのフォームでタブの色
-
EXCELの塗りつぶしのボタ...
-
Dドライブのアクセス許可
-
Access VBAでボタンの背景色を...
-
マクロ ボタンをクリックしたら...
-
エクセル チェックボックスの...
-
2重フィルター
-
【Excel】難しいのですが、献立...
-
【Excel VBA】マクロボタンを表...
-
生成AI画像について
-
メルカリのメルカードで買い物...
-
画像をループさせるうまい方法...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelシート上のマクロを登録し...
-
エクセルの画面にユーザーフォ...
-
【Excel VBA】マクロボタンを表...
-
UPS警告音を止めたい
-
Excel ラジオボタンのリセット...
-
Excelで、ボタンにコメントをつ...
-
複数シートのボタンに同一の動...
-
フォームコントロールから作っ...
-
ユーザーフォームをショートカ...
-
マクロで作ったボタンのサイズ...
-
エクセルで、オプションボタン...
-
EXCELのマクロが 実行時エラー5...
-
EXCELの塗りつぶしのボタ...
-
エクセルでマクロボタンを押す...
-
excel スクロールしても常にボ...
-
Accessのフォームでタブの色
-
入力済み、選択したセルに連動...
-
マクロ初心者です。 msgboxのre...
-
Access VBAでボタンの背景色を...
-
VBAでクリアボタンのみ残してシ...
おすすめ情報
mygoonickname さん
今は、コンボボックスで選択肢から選んでから、
「実行」と書かれたコマンドボタンをクリックして値毎の処理をしています。
これはうまく行きましたので助かりました。
使っていて思ったのは、
コンボボックスで選択肢から選んだ直後に処理に飛ばす事は可能でしょうか?
それが出来れば「実行」ボタンを無くせます。
ご存じでしたらよろしくお願いいたします。