• ベストアンサー

エクセルVBA コントロールの制御

エクセルのシート上にコマンドボタンを貼り付けています。このシートを縦横にスクロール移動してもコマンドボタンは常に同じ位置(たとえば画面中央)に在るようにプロパティかVBAで制御できないでしょうか。 エクセルは2003Pro、WindowsはXpProです。

  • 5unpo
  • お礼率61% (32/52)

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

>このシートを縦横にスクロール移動しても コマンドボタンをマクロで移動させるのは容易ですが,移動させるトリガがエクセルVBAに無いので,ご相談でヤリタイことは原則できません。 #スクロールした後,目的の「セルを選んだ」らその横にヒョコッとボタンが寄ってくるなんて事は,簡単にできますね 簡単にできることその1) ユーザーフォームを作成してボタンを配置し, sub macro1() userform1.show vbmodeless end sub のようにして表示しておくと,シートを触りながらユーザーフォームは表示された場所にあり続けます。 簡単にできることその2) カスタムツールバーを(テンポラリに)作成してツールボタンを配置し,ツールボタンにマクロを登録,ツールバーをフローティングしてその辺に置いておけば出来ます。 ThisWorkbookに次のように: private sub Workbook_Open() on error resume next application.commandbars("myCustomBar").delete application.commandbars.add(name:="myCustomBar",position:=msobarfloating, temporary:=true).visible = true application.commandbars("myCustomBar").controls.add type:=msocontrolbutton, id:=2950, before:=1 application.commandbars("myCustomBar").controls(1).onaction = "!macro1" end sub

5unpo
質問者

お礼

簡単にできることその1)をやってみました。望み通り出来ました。ありがとうございました。

関連するQ&A

  • エクセルのコマンドボタンの位置をVBAで指定できませんか?

    エクセルのコマンドボタンの位置をVBAで指定できませんか? 表にコマンドボタンがかぶらないようにデータのない最終行にコマンドボタンを移動する VBAを教えていただけませんか? 最終列に移動するVBAも合わせて教えてください。

  • EXCELでVBAを使用してセル移動のコントロールをしています。

    EXCELでVBAを使用してセル移動のコントロールをしています。 主にENTERキー、SHIHT+TAB キーでのセル移動の制御を行っていますが、 EXCELの機能で矢印キー↑↓←→のキー操作が邪魔で、 思うような位置にセルが移動しなく、 たぶんEXCEL側の制御の動きをしているのではないかと思うのです。 VBAでセル移動の制御をしているせいか、 EXCEL制御で動く矢印キーが思うように制御しません。 そこで、このEXCEL制御の矢印キーの動きをしないようにと考えてます。 どのようにしたら、矢印キー制御を阻止できるでしょうか? 教えて頂けませんか?

  • VBA コントロール EXCEL

    VBAでプログラミングしています。 Excelでコントロールを使用しようと思いますが、 数が多くなりそうですが~ オプション ボタン 約20600個 チェック ボックス 約600個 コンボ ボックス 約500個 コマンドボタン 約300個 そして、上のコントロールにVBAで制御をする予定です。 値を設定、値を取得、イベントの発生などの動作になります。 環境はEXCEL 2003になります。 これで問題ないですか。 問題があったらどんな問題がありますか。(速度、メモリ、容量、エラーなど) 教えてください~

  • 【ExcelVBA】commandButtonをクラスモジュールで制御するには

    お世話になります。 エクセルVBAで、ワークシートに置いたコマンドボタンの制御を、クラスモジュールから 行いたいと考えています。 制御といっているのはボタンの使用可不可、イベントの実行などです。 いろいろ調べてみたのですが、フォームからのイベントをクラスモジュールで行っているのは 見つけたのですが、ワークシート上に直接配置したボタンなどの制御は見つけることが出来ませんでした。 使用しているEXCELにバージョンは2003です。 よろしくお願いいたします。

  • エクセル VBA 

    エクセル VBA  Sheet上にコマンドボタンをクリックさせたら 電卓表示させるにはどのように記述をしたら良いですか? (1)勿論、VBAで電卓作成したいのですが…何か良いサイトはありますか?それか  作り方を教えて欲しいです。 (2)ツール⇒すべてのプログラム⇒アクセサリ⇒電卓  で表示できますよね!それをコマンドボタンクリックで  表示させるには、どのように記述したら良いですか?   すいません教えてください!

  • VBAエクセルのフォームについて

    お世話になっております。 VBAエクセルのフォームについて教えていただきたいのです。 VBAで入力のフォームを作ったのですが(TEXT BOXが4つ、コマンドボタン1つ、コマンドボタンを押したときに登録される用にしたい) 各シートの集計にしたい為、各シート(31のシートがあります)に入力フォームがあります、その各シートでの入力結果を1つのシートに 集計したいのですが、どの様なコードにしたらようか判りません。 素人のためお手数ですが、なるべく判りやすくお願いします。 よろしくお願いします。

  • VBA リストボックスのスクロール制御

    おはようございます。 大変恐縮ですが、EXCEL VBA リストボックスの制御についてご教授、お願い致します。 現在、リストボックスにボタンを押すと文字列一覧が表示されるようにしております。(複数回押下することもある) リストボックスに文字列が追加されるごとに、スクロールが動いてしまい、 新しい情報はスクロールを動かさないと表示できないようなのですが なにか、ユーザーが動かさなくても、常に新しい情報を表示するようには できないものでしょうか?

  • エクセル VBA

    エクセル VBA コマンドボタン(印刷)をクリックするとSHeet1・SHeet2が 2つ印刷出来るような設定にしたいです。 普通は、SHeet1をコピーして Sheet2の画面を開いてコピーという手順を ボタン押すと、SHeet1・SHeet2が印刷されるようにしたいのですが・・・・ ちなみに印刷設定は出来ています。 このような ことはマクロで出来るのでしょうか? 記述を教えて下さい!

  • Excel>コントロールを配置しているシートを印刷プレビューすると、コントロールがずれる

    こんにちはtmgmです。 Excelについての質問です。 私はよくExcelシートにコントロールボタン等を配置します。 例えばコマンドボタンを配置した状態で印刷プレビューをした場合、そのプレビューの画面では正常な位置にコマンドボタンがあるのですが、印刷プレビューを閉じると、なぜかコマンドボタンが移動してしまいます。(左側に)。プレビューすればするほど左側に移動していきます。 これって何か解消方法はないんでしょうか?(MSOFFICEのバグでしょうか?) ご存知の方いらっしゃいましたら、ご返答宜しく御願いします。

  • エクセル VBAの時間制御

    初心者です。 ゲームをエクセルVBAで作っています。 ユーザーフォームからスタートさせて何分~何分の間にあるボタンをクリックしたら指定したユーザーフォームが開くというようなコードが知りたいです。 時間の制御がよく分からずに困っていますのでよろしくお願いします。

専門家に質問してみよう