Excelの画面にボタンを作り、これを押すと指定した動作(プロシージャ?)が起動するようにしたいです。
やり方は色々とあると思うのですが、今回はお手本にしているファイルの通りに行いたいです。
具体的にどうしたいのかというと、Sheetの中にプロシージャやCommandButtonを設定したいです。
画像は、現在私が作成しているVBEの画面です。
プロシージャを書いていく画面上部にある、オブジェクトをプルダウン画面には、「(General」と「Worksheet」の2種類のみです。
これに「CommandButton1」を追加するにはどうしたらいいでしょうか?
また、その横のプロシージャのプルダウン画面には、「(Decralation)」と「CommandButton1_Click」の2種類ですが、「Click」を追加したいです。
オブジェクト→CommandButton1
プロシージャ→Click
‥という状態にしたいです。
A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
こんばんは
回答は、すでにありますが、対象のシート上にActiveXコントロールを作成するとコードライティングエリア上部の左プルダウンに作成されたコントロール名が登録されます。
そのコントロールを選ぶと右プルダウンにそのコントロールが持つイベントが登録され、選択すると対象のイベントプロシージャがPrivate Subとして下のコードライティングエリアに作成されます。
また、シート上のActiveXコントロールを右クリックしコードの表示を
選択しても対象のコントロールのコードがライティングエリアに作成されます。
すでに作成されている場合は、VBEが開き、作成されているプロシージャ内にカーソルが移動、表示されます。
右クリックで作成されるイベントはCommandButtonの場合、Clickです
No.4
- 回答日時:
こんにちは
既に回答されていますけれど、ボタンを作成する際に、「フォームコントロール」のボタンではなく、「ActiveX」のボタンを作成するようにしてください。
下の添付画像で、赤丸で囲んである方のボタンです。
fujillinさん、わかりやすく画像付きでありがとうございます!!
仰る通りで、どうにか無事にできました!
オブジェクトを増やすというのはこのようにするんだなと、何となくですが意味が分かった気がします。
やはり実践しながら学ぶと、できたときの腑に落ちた感覚が数倍です。
実をいうと、このあとプロシージャの紐づけの仕方で悩んだのですが、右クリック→プロパティで、紐づけたいプロシージャ名にすればいいんだと気がつきました。
本当にいろんな機能があるんだなと、知らないと損することが多いなと改めて思います。
今日はもう仕事が終わったので、これから夜な夜な勉強します。
No.3
- 回答日時:
Book2のSheet1にActiveXのコマンドボタンを作っていますか?
ご回答ありがとうございます。
仰る通りで、ActiveXでできました!!
なるほど、Sheet内のオブジェクトを増やすということなんだな(シート、ボタン)と、うすぼんやりと知識が1つ溜まりました。
No.2さんのお礼にも書かせていただきましたが、ActiveXは使ってはいけないみたいにどこかで聞いた気がしていました。
しかしやはり使われることあるんですね。
こちらの疑問が晴れたことで、どうにか形が整いましたがまだ不十分なので引き続き改良します。ありがとうございます!
No.2
- 回答日時:
No.1の者です。
Excelシート画面で、開発タブの、挿入のActiveXコントロールの中の、
コマンドボタンを配置すれば、出てきましたね。
mygoonicknameさんこんばんは!
前回の質問に引き続き、こちらにもご回答をいただきありがとうございます^^!!
仕事中だったため、皆さんへのお礼の前に新たな質問を投稿してしまい申し訳ありません。
そしてActiveXでできました!!
私が謎だった、プルダウンにきちんとCommandButtonが出てきました。
ActiveX、たしか何かの動画で使ってはいけないだか、無視するようにと言われていた気がするので、意識していませんでした…
前任者が本当に知識のある方だったことを実感しています。
No.1
- 回答日時:
こんにちは。
シート上では、その様な機能はないと思うのですが。
ユーザーフォーム上では、ダメでしょうか?
左のVBAProjectで、右クリックの、挿入、ユーザーフォームで、そこに
コマンドボタンを配置して、そのコマンドボタンをダブルクリックすれば
自動で追加されるのですが。
https://www.sejuku.net/blog/37407
ありがとうございます!
実は最初、新しくUserformを追加し、そこに出てきたコントロールの一覧からコマンドボックスを選ぼうとしました。
ですが、見本にしていたファイルには、Userformはありませんでした。
Sheetの方にプロシージャは書かれていましたが、表示するボタンの設定はどこに書かれているのか謎で、よくよくVBEを見たら、どうもオブジェクトプルダウンとプロシージャプルダウンが、私が作ったものと違う…という状態でした。
結果が一緒ならなんでもいいと思うのですが、仕事で使用するファイルであることと、私がVBAに詳しくないので、なるべく前任が作ったファイルに沿った記述にしようと思ったのが動機です…
No.2の方にも再びありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- 画像編集・動画編集・音楽編集 動画をディスク作成すると画像が乱れる。 4 2022/06/24 07:49
- その他(プログラミング・Web制作) uwscのCHKING関数の画像の認識がうまくいかない。 1 2022/06/18 20:55
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) VBでExcelの表形式の様なデザインを作りDBと連携させる。 4 2023/02/28 11:39
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- Windows 10 ノートPCの「アップデートナビ」画面について 1 2023/07/04 21:27
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- CAD・DTP Autocad Scriptファイルからの入力とコマンドラインからの入力が違う 1 2023/08/01 09:13
- JavaScript jQueryでのレスポンシブが綺麗に動かない 3 2022/06/21 11:08
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
C#,vb.netで業務用アプリ開発と...
-
EXCELでactivexコントロールを...
-
エクセル コントロールツール...
-
現代文読解力開発講座の問題です。
-
(VBA)スピンボタンの大量...
-
ACCESSフォームにコント...
-
エクセルVBAでオプションボタン...
-
アクセス特有の書き方?
-
【VB】テキストボックスのキー...
-
間違えて配置してしまったコン...
-
C# FlowLayoutPanelにて
-
エクセルVBAユーザーフォーム・...
-
VB6.0 実行時エラー 374について
-
C#で角が丸いテキストボックス
-
サーバー上のブックを開けない...
-
vb.netで画面のコントロールId...
-
'ckbl' コントロールは作成され...
-
ASP.netのエラー 2005から2008...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
カメラスクロールするのを動画...
-
エクセル・VBA CheckBoxのオブ...
-
vb.netで画面のコントロールId...
-
EXCELでactivexコントロールを...
-
ExcelVBAでListViewが使用できない
-
(VBA)スピンボタンの大量...
-
エクセルVBAでオプションボタン...
-
C#で角が丸いテキストボックス
-
ユーザーフォームで動的(Me.Con...
-
アクセス特有の書き方?
-
間違えて配置してしまったコン...
-
コンボボックスの文字によるif...
-
VBAのエラーについて、”実行時...
-
変数をコントロール型で使用す...
-
chr関数の呼び出しで「プロ...
-
With~EndWithの省略部分と引数...
-
C#で自分のウインド・ハンド...
-
excelのリストボックスで選択し...
-
'ckbl' コントロールは作成され...
-
フォーム上の現在アクティブな...
おすすめ情報