プロが教えるわが家の防犯対策術!

フォーム上のコマンドボタンを押したとき、複数あるテキストボックスの内、アクティブになっている
テキストボックスに指定の数字が入力される。IF テキストボックス1がアクティブ Then テキストボックス1.テキスト=”1” ELSE テキストボックス2.テキスト=”2” のようなマクロです。こんなことができるでしょうか。よろしくお願いします。

質問者からの補足コメント

  • さっそくお答えいただきありがとうございます。
    >アクティブになっている
    ではなくて、「フォーカスのあるテキストボックスに」でした。
    説明が悪くて済みません。

    No.1の回答に寄せられた補足コメントです。 補足日時:2017/10/25 23:36

A 回答 (2件)

> >アクティブになっている


> ではなくて、「フォーカスのあるテキストボックスに」でした。

同じですよ。
コマンドボタンがフォーカスを受け取る設定になってたら、上手くいかないです。


コマンドボタンのプロパティの、
TabStop
TakeFocusOnClick
をFalseにしといたら、No.1の回答の方法で出来そうでしたが。
    • good
    • 0
この回答へのお礼

助かりました

>コマンドボタンのプロパティの、
>TabStop
>TakeFocusOnClick
>をFalseにしといたら、No.1の回答の方法で出来そうでしたが。

できました。ありがとうございました。

お礼日時:2017/10/26 00:50

> フォーム上のコマンドボタンを押したとき、複数あるテキストボックスの内、アクティブになっている



コマンドボタンがアクティブになっちゃうのでは。

MsgBox Me.ActiveControl.Name

で、アクティブなコントロールの名称を確認してみてください。
ボタンの設定変えて、フォーカスを受け取らないとか、タブストップを受け取らないとかに設定すれば質問のような動作になるかも。


TextBox1がアクティブになってるなら、
if Me.ActiveControl.Name="TextBox1" then TextBox1.Test="1" else TextBox2.Text="2"
とか。
この回答への補足あり
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A