Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


65306 / 76734 ←次へ | 前へ→

【16003】Re:自分を呼びだしたフォームを知るには
発言  ichinose  - 04/7/14(水) 11:36 -

引用なし
パスワード
   ▼俺は何処から来たのか さん:
こんにちは。

>ありがとうございます。
>
>確かに、
>FormX.Tag = Me.Name
>FormX.Show
>とすると、FormXのモジュールで呼び出し側の
>フォーム名が得られました。
>
>しかし、FormXのモジュール内で、呼び出し側の
>フォームをオブジェクトとして、呼び出し側フォーム
>上のコントロールのプロパティに値を設定したり
>できませんでした。
>
>例えば、FormX内で、
>
>Set SS= FormX.Tag
>SS.TextBox1 = "1234"
>
>ということがませんでした。
>つまり、オブジェクトの名称を得て、
>それをオブジェクトとして認識させる方法があれば
>お教えください。
>よろしくお願いします。
>
>
>▼[名前なし] さん:
>>呼び出し側のフォームで、FormXのTagプロパティに名前をセットして
>>
>> FormX.Tag = Me.Name
>> FormX.Show
>>
>>FormXフォーム側でMe.Tagで判別するとか。
>>
>> Select Case Me.Tag
>> Case "UserForm1"
>>  ・
>>  ・
>>  ・

基本的には、[名前なし] さんの手法に賛成です。FormXの結合度が弱そうだから・・。

Tagプロパティで問題があるならば、独自プロパティをFormXに作成しては?
FormXのモジュールに
Public caller_form As Object

等と宣言しておいて

呼び出しフォームでは
with FormX
    Set .caller_form = Me
   .Show
   End With
なんていうコード

すると
FormXでは、
MsgBox caller_form.TextBox1.Text
なんてコードが作動します。
0 hits

【15956】自分を呼びだしたフォームを知るには 俺は何処から来たのか 04/7/13(火) 14:49 質問
【15962】Re:自分を呼びだしたフォームを知るには IROC 04/7/13(火) 15:51 回答
【15979】Re:自分を呼びだしたフォームを知るには [名前なし] 04/7/13(火) 21:05 回答
【15997】Re:自分を呼びだしたフォームを知るには 俺は何処から来たのか 04/7/14(水) 10:04 質問
【15998】Re:自分を呼びだしたフォームを知るには IROC 04/7/14(水) 10:06 回答
【16003】Re:自分を呼びだしたフォームを知るには ichinose 04/7/14(水) 11:36 発言
【16029】Re:自分を呼びだしたフォームを知るには 俺は何処から来たのか 04/7/14(水) 16:51 お礼

65306 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free