- ベストアンサー
VBAのコントロールなんかをコレクションとして扱える?
フォームに複数のコントロールを配置したときにその選定によって条件分岐やイベント処理を行いたいときに同じようなコードを羅列する必要が生じました。コントロールをコレクション?(もしかして?クラス?<クラスは全く解っていません>)として、一くくりに扱う方法ってありますか? ご指導のほどよろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
関連するQ&A
- VB2008でユーザーコントロールのイベントについて
VB2008でユーザーコントロールのイベントについて 作成したユーザーコントロールを(1)フォームに配置した時のみ実行される (2)フォームを実行した時のみ実行される それぞれ処理を分けたいのですが、適切なイベントが見つかりません。 何か区分けのできる方法はあるのでしょうか? 何方か教えていただけませんか
- ベストアンサー
- Visual Basic
- UserFormコレクション
UserForm1内に配置されたコントロールを操作するのに、UserForm2を使うことは有りますか。 コレクションで指定する時に・・・UserForm1.Controls("OptionButton1").Value等。 学習教材で、画像はUserForm1だが、コードにはUserForm2と有る。 どうぞ宜しくお願いします。
- ベストアンサー
- Visual Basic
- アクセス+vb 複数コントロールに同じ処理する場合
アクセス+VBです。 空のフォームにラベルを複数ランダムに配置します。(多ければ500個くらい) そのラベルにクリックイベントを発生させて処理させる場合、ラベルの数だけイベント処理を書かなくてはいけませんよね。 もし、処理内容が同じならひとつの処理記述ですませる方法はないですか。 例えば学校の教室だとすれば、ラベルを机の代わりにしてフォームに配置します。 ラベル(机)をクリックしたら、その生徒のデータが表示される。 良い方法はないでしょうか?
- 締切済み
- Visual Basic
- VBAにていろいろ質問させてください
VBAの処理です。 本来なら別々に質問しなければいけないのですが、 どれでも良いのでお分かりになるものを教えてください。 (1)複数のフォームを起動する場合、既にそのフォームが起動中であるとしる方法。またそのフォームを画面最前線に表示する方法。 (2)ExcelシートのコントロールにはLostFocusが使用できるのですが、VBAのActiveXコントロールにはありません。代替機能はありますか?(必須チェックなどしたいのですが) (3)フォームで[?]ボタンでヘルプを出力したいです。 [?]は閉じるボタンの横に配置できたのですが、 [?]に対する各コントロールのヘルプはどう設定すればよいのですか? すみません。どれでも良いので教えてください
- ベストアンサー
- Visual Basic
- VB2005 コードでのコントロールのコピーについて
いつもお世話になっています。 独学でVBの勉強をしているものなのですが、 どうしてもわからないことがあるので教えてください。 デザイナの画面で配置したテキストボックスなどのコントロールを、 コードでコピーして複数配置するようにしたいんです。 そこで、デザイナでTextBox1を配置して、 コードで以下のように記述しました。 Dim MyTextBox1 As New TextBox MyTextBox1 = TextBox1 Me.Controls.Add(MyTextBox1) すると、デザイナ画面で配置したテキストボックスが無くなって、 新たにコードで作成したテキストボックスだけが、 画面に表示されてしまうんです。 実際に行いたいことは、複数のコントロールをパネル上に配置して、 そのパネルをコードで複数作成することなのですが、 そもそもそのようなことはできないのでしょうか? かなり的外れな質問になってしまっているかもしれませんが、 お分かりでしたら教えてください。 よろしくお願いします。
- ベストアンサー
- Visual Basic
- ユーザコントロールのイベント取得について(C#)
環境:Visual Studio 2005 C# Windows Application フォームに自作のユーザコントロールを貼り付けてそのイベントを取得する勉強をしているものです。 フォームでのユーザコントロールイベントを取得して処理をする方法が分かりません。 状況 ユーザコントロールにはテキストボックスを追加しています。 また、フォームにそのユーザコントロールを追加しています。 確認したいことは、ユーザコントロールのテキストボックスになにか値を入力したタイミングでチェンジイベントをフォーム側で察知し、処理をするというものです。 どなたか、要点だけでもいいので教えていただけないでしょうか? 宜しくお願いいたします。
- ベストアンサー
- その他(プログラミング・開発)
- VB6 ユーザコントロールでクリックイベント
コンボボックスにclickイベントを書いたのち(この段階ではprivate) このコントロールをユーザコントロールにしました。 フォーム上に上記のユーザコントロールを配置したところ クリックイベントが発生しません クリックイベントを発生させるには 何か特殊な記述が必要ですか?(例えばオーバライドとか) どうすればクリックイベントを発生させられますか
- 締切済み
- Visual Basic
- WEBユーザーコントロール
ASP.NETで開発をしております。fw2.0です。 WEBユーザーコントロールでDBの読み込み画面AとDBの書き込み画面Bを作ったとします。 WEBフォームにAとBをのっけた場合、Bの書き込み処理が終わった後にAの表示を更新させる にはどうしたらいいのでしょうか? イベントのとり方がわからなくて困っています。 ユーザーコントロールを使わなければ普通にイベントを取れるのですが。。。 出来ればユーザーコントロールを使いたいので WEBフォームでユーザーコントロールのイベントを取る方法があれば教えてください。
- ベストアンサー
- Microsoft ASP
- もしフォームヘッダーにコントロールがあるのなら
アクセスのフォームの、フォームヘッダーに検索用テキストボックスとコンボボックスがあり、 詳細エリアにレコードソース(コントロールソース)に紐付いたテキストボックスが複数あります。 フォームヘッダーのフィルタを解除するコマンドを実行して、 フォームヘッダーのテキストボックスとコンボボックスをnullにしたいのですが、 vbaで「もしフォームヘッダーなら」ってするにはどうすればいいでしょうか? フォームヘッダーのコントロール名も詳細エリアのコントロール名も 区別のないコントロール名でなのでコントロール名で条件分岐をすることは不可能です。 Private Sub フィルタを解除コマンド_Click() Dim ctl As Control For Each ctl In Me.Controls If (ctl.ControlType = acTextBox) Or (ctl.ControlType = acComboBox) Then 'ここで、もしフォームヘッダーにコントロールがあるのならってしたい Me.Controls(ctl.Name) = Null End If Next ctl Me.Form.FilterOn = False End Sub このコードに付け加えてくれませんか? Debug.Print ctl.Name でコントロール名を取得するとフォームヘッダーも詳細もどちらのコントロール名も取得されてしまいます。 On Error Resume Next 以外でお願いします。
- ベストアンサー
- オフィス系ソフト
- VBAのイベント処理について
VBAのイベント処理について お世話になってます。現在、VBAでアプリケーションを作成しています。 1つのフォームに4つのテキストボックスと1つのボタンが配置されており、それぞれイベントが設定されています。 その中のテキストボックスに関するイベントなのですが、1つのテキストボックスに対してKeyPress、KeyDown、MouseUp、AfterUpdate、以上4つのイベントを作成します。 フォームに配置されている4つのテキストボックスすべてに、上記で示したイベントを作成する必要がありますが、各イベントにおける処理の内容はオブジェクト名が違うだけで全く同じです。 ひとつひとつイベントを作成していけば、処理目的は満たせそうですが、ソースがかなり長くなってしまいます。ひとつのオブジェクトに対してこれらの処理をひとまとめにする様な記述方法はありませんでしょうか?考え方だけでも教えていただければ幸いです。 質問が長くなってしまい申し訳ありません。回答宜しくお願い致します。
- ベストアンサー
- その他(プログラミング・開発)
補足
>だらだらと、長く書いてすみません。 勿体無いお言葉!!有難う御座います。大変ためになります。っと本来ならば言いたいのですが、全体を理解するには今の実力では、超~難解です。しかし、いつの日か必ず解読しご指導の内容を自分のものにしたいと考えています。何気なくふと思いついた質問だったのですが、とんでもなく奥深いことだったのですね?正直言って皆さんが凄く努力して努力して習得された知識を惜しげもなく披露されご指導頂けることに心から感謝いたします。特に、オブジェクトにControls("OptionButton" & inta)などと、数式が使えることは目から鱗が落ちました。(落ちるほどの実力はありませんが!)即、実際に役立てて行きたいと思います。有難う御座いました。今後ともよろしくお願いいたします。このご指導のために費やした時間を考えると短文でそっけないお礼しか出来ないことをお詫び申し上げます。有難う御座いました。