-PR-
解決済み

大量のオブジェクトで同様のイベント処理をしたい場合の記述

  • すぐに回答を!
  • 質問No.43085
  • 閲覧数127
  • ありがとう数2
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 55% (22/40)

Excel VBAでフォームなどに大量のオブジェクトを配置して、各々のオブジェクトで同様のイベントを処理したいのですが、まとめて記述する方法はあるのでしょうか。
ユーザーフォーム上に大量の数値入力ボックス(TextBoxオブジェクト)を配置して、全てのボックスに同様の入力値制限を課そうとして、コードが肥大化して困っています。どうかよろしくお願い致します。
例)
Sub TextBox1_change()
<プロシージャー>
end sub
Sub TextBox2_change()
<プロシージャー>
end sub
・・・・・・
Sub TextBox10_change()
<プロシージャー>
end sub
(<プロシージャー>部分は共通)のように延々と記述しなくても済む方法はあるのでしょうか。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

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

  • 回答No.2
レベル11

ベストアンサー率 49% (139/279)

引導を渡しに来ました(笑い)

イベントを一箇所で記述するのは無理です。
ただし、下記のように、

Sub TextBox1_change()
Call イベント処理
end sub
Sub TextBox2_change()
Call イベント処理
end sub
・・・・・・
Sub TextBox10_change()
Call イベント処理
end sub

Sub イベント処理
<プロシージャー>
End Sub

のようにして、楽をする方法は、あります。
(イベントによって、引数の数が違うので、そのあたりをどうするかと言う問題はありますけどね。)
お礼コメント
gutiguti

お礼率 55% (22/40)

引導を渡して頂いてありがとうございました。私はarataさんのやり方で引数にイベントを起こしたオブジェクト自身を渡して以下のようにしています。

Sub TextBox1_change()
Call イベント処理(TextBox1,...)
end sub
Sub TextBox2_change()
Call イベント処理(TextBox2,...)
end sub
・・・・・・
Sub TextBox10_change()
Call イベント処理(TextBox10,...)
end sub

Sub イベント処理 (EventObj As Object,...)
<プロシージャー>
End Sub

あきらめて、根気良く作成を続けることにします。
投稿日時 - 2001-02-22 12:37:27
関連するQ&A
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.1
レベル13

ベストアンサー率 26% (511/1924)

Controlsコレクションを使ってみたらいかがでしょうか? 使い方はヘルプを見てください。 要はフォーム上のオブジェクトをぜーんぶ配列にしちゃったようなもんです。 ...続きを読む
Controlsコレクションを使ってみたらいかがでしょうか?
使い方はヘルプを見てください。

要はフォーム上のオブジェクトをぜーんぶ配列にしちゃったようなもんです。
補足コメント
gutiguti

お礼率 55% (22/40)

早速のご解答ありがとうございます。
Controlコレクションは1つのイベントに対して複数のコントロールを一括処理する場合には使えますよね。(たとえば、あるCommandButtonオブジェクトをクリックしたら全てのTextBoxオブジェクトをクリアするなど…)

質問は、複数のオブジェクトで発生するイベントに対して一括でコードを記述したいということです。イメージ的には下記のような記述方法がないかということです。(下記のコードそのものは動きません。無理がありますね・・・)
コードの美しさの問題だけなのですが・・・
例)
For Each MyTextBox In Controls
 Sub MyTextBox_change()
  ・・・・・
 End Sub
Next MyTextBox

『無理に決まってんじゃん』と断定できる方がいましたら(笑)、私に引導を渡して下さい。よろしくお願い致します。
投稿日時 - 2001-02-21 19:35:45


このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このやり方知ってる!同じこと困ったことある。経験を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


新大学生・新社会人のパソコンの悩みを解決!

いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ