アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になります。

1点目・これは、Private Sub を見やすくするため、とりあえず、モジュールに入れとけ、という使い方でいいのでしょうか。

2点目 下記うまくいきません。
Private Sub
消去
End Sub

モジュールに
sub 消去()
テキスト数量 = "" (テキスト数量はテキストボックス)
End Sub

これってやっぱり、モジュールの使い方が間違っているのでしょうか?まあ~間違ってるから動かないんでしょうけど・・・モジュールについて解説と使用方法を教えて頂きたいです。

2点目の解決方法はPrivate Subにテキスト数量 = ""するしかないのでしょうか、消去の数・箇所(同じもの)が多いので、できれば何処かに纏めたいのです。こちらもお願いします。

A 回答 (2件)

2点目



>Private Sub
>消去
>End Sub
>
>モジュールに
>sub 消去()
>テキスト数量 = "" (テキスト数量はテキストボックス)
>End Sub

複数のフォームがあり全てのフォームがほぼデザインが同じでテキストボックスの名称を同じにしているのであれば以下のようにしてみては如何でしょうか。
※こんな造りは、本当にあまりよろしくないと思います。

Private Sub
  Call 消去(Me) '(*1)
End Sub

*1:Subを呼ぶ時は、見やすくするためにCallを記述した方が良いでしょう。

Public Sub 消去(frm as Form)
  frm.テキスト数量 = "" (テキスト数量はテキストボックス)
End Sub

解説:どのフォームのテキストボックスなのかを知らせる為に、フォームオブジェクトを渡します。
    • good
    • 0
この回答へのお礼

御礼が遅くなりすいません。

解決しました。
有難うございます。

お礼日時:2003/06/15 10:31

>1点目・これは、Private Sub を見やすくするため、とりあえず、モジュールに入れとけ、という使い方でいいのでしょうか。



可能ですが、やってはダメです。
フォームに固有の処理(テキストボックスに値を設定する等)はフォーム内に記述しましょう。

汎用的に使える処理(例えば、何らかの金額の計算処理など)はモジュールに入れればいいかもしれません。(ソフトの作り方次第では、クラスモジュールに入れなければならないかもしれません。)

フォーム内のPrivate Sub を見やすくするためには、同じフォーム内にもう一個 Private Sub を作成すればいいでしょう。

>2点目 下記うまくいきません。

sub 消去()
フォームの名称.テキスト数量 = "" 
End Sub

とすべきでしょう。
複数のフォームetcに「テキスト残量」がある場合があるので。
先に書いたように、フォーム外のモジュールで、個々のフォーム内のテキストボックス等を直接操作するのは、あまり行儀のいいやり方ではありません。
    • good
    • 0
この回答へのお礼

御礼が遅くなりすいません。

解決しました。
有難うございます。

お礼日時:2003/06/15 10:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!