Excel VBA質問箱 IV

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

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


44144 / 76732 ←次へ | 前へ→

【37609】Re:ユーザーフォームのオブジェクト指定方法
発言  ichinose  - 06/5/12(金) 21:05 -

引用なし
パスワード
   こんばんは。
いくつも問題がありそうですが、

>例えば、A_01で計算Xを選択した場合
>UserForm 「計算X」内で
>Private Sub Button_OK_Click()
>  Unload 計算X
>  メインフォーム.B_01 = Format(BB, "#,##0.0")
>  メインフォーム.C_01 = Format(CC, "#,##0.0")
>End Sub
>と記述すれば、動作的には問題のですが、これですとA_01〜A_10の全ての対応を記述しなければなりません。計算種類も多いことから、この出力部を整理したいのです。
この問題ですが、

http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=37469;id=excel

ここに同じようなご質問がありました。
参考にして下さい。

メインフォームと計算Xというふたつユーザーフォーム
二つのユーザーフォ−ムは、出来る限り独立したオブジェクトとして
作成することを考えましょう!!

上記のコードだと

>  メインフォーム.B_01 = Format(BB, "#,##0.0")

計算Xのモジュール内でメインフォームというオブジェクトの記述がありますよね?
こういう記述をしてしまうと、
出力先が限定されてしまいます。
よって、メインフォームと計算Xという二つのオブジェクトの結合度が
強くなってしまい、汎用性が失われてしまうのです。

リンクしたスレッドで上記のコードより、結合度を弱くしている
コード例を記述していますから、応用してみて下さい。
そうすれば、

>と記述すれば、動作的には問題のですが、これですとA_01〜A_10の全ての対応を記述し
>なければなりません。
この問題は、解決できると思います。

まずは。ここまで、検討してみて下さい。
0 hits

【37606】ユーザーフォームのオブジェクト指定方法 わいわい 06/5/12(金) 20:13 質問
【37608】Re:ユーザーフォームのオブジェクト指定... neptune 06/5/12(金) 20:45 発言
【37609】Re:ユーザーフォームのオブジェクト指定方法 ichinose 06/5/12(金) 21:05 発言
【37636】Re:ユーザーフォームのオブジェクト指定方法 Kein 06/5/13(土) 13:45 発言
【37667】Re:ユーザーフォームのオブジェクト指定... わいわい 06/5/15(月) 9:35 お礼

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