Excel VBA質問箱 IV

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

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


4139 / 13646 ツリー ←次へ | 前へ→

【58207】textbox hisao 08/10/11(土) 19:34 質問[未読]
【58209】Re:textbox マクロマン 08/10/11(土) 20:22 発言[未読]
【58254】Re:textbox hisao 08/10/14(火) 22:30 お礼[未読]

【58207】textbox
質問  hisao  - 08/10/11(土) 19:34 -

引用なし
パスワード
   お教え下さい
入力伝票をuserform形式で作成したいのですが
userform上のtextboxに算式は入れられないのでしょうか
userformをactiveにした後
例えば textbox1に 30
    textbox2に 2 と入力した場合
    textbox3に 60と表示させたいのです
又   textbox5に 初期で今日の日付 today()を表示(変更入力可)させたいのです

【58209】Re:textbox
発言  マクロマン  - 08/10/11(土) 20:22 -

引用なし
パスワード
   ユーザーフォームのコントロールに初期値を与えるには、
UserForm_Initializeイベント
を使います。
また、日付けの整形には
Format関数
を使います。

Private Sub UserForm_Initialize()
Me.TextBox5.Value = Format(Date, "yyyy/m/d")
End Sub

テキストボックスに入力したら起動するイベントにはいろいろあります。
Exitイベント
は入力完了後に起動する(とおもう/自信なし)ので便利です。
Changeイベントでは、一桁入力するごとにイベントが走ります。
他にもテキストボックスのイベントはいろいろありますので調べてみてください。

Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsNumeric(Me.TextBox2.Value) = False Or Me.TextBox1.Value = "" Then Exit Sub
If IsNumeric(Me.TextBox1.Value) = False Then Exit Sub
Me.TextBox3.Value = Me.TextBox1.Value * Me.TextBox2.Value
End Sub

Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If IsNumeric(Me.TextBox1.Value) = False Or Me.TextBox1.Value = "" Then Exit Sub
If IsNumeric(Me.TextBox2.Value) = False Then Exit Sub
Me.TextBox3.Value = Me.TextBox1.Value * Me.TextBox2.Value
End Sub

【58254】Re:textbox
お礼  hisao  - 08/10/14(火) 22:30 -

引用なし
パスワード
   ▼マクロマン さん:
有り難うございました。

>ユーザーフォームのコントロールに初期値を与えるには、
>UserForm_Initializeイベント
>を使います。
>また、日付けの整形には
>Format関数
>を使います。
>
>Private Sub UserForm_Initialize()
> Me.TextBox5.Value = Format(Date, "yyyy/m/d")
>End Sub
>
>テキストボックスに入力したら起動するイベントにはいろいろあります。
>Exitイベント
>は入力完了後に起動する(とおもう/自信なし)ので便利です。
>Changeイベントでは、一桁入力するごとにイベントが走ります。
>他にもテキストボックスのイベントはいろいろありますので調べてみてください。
>
>Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
> If IsNumeric(Me.TextBox2.Value) = False Or Me.TextBox1.Value = "" Then Exit Sub
> If IsNumeric(Me.TextBox1.Value) = False Then Exit Sub
> Me.TextBox3.Value = Me.TextBox1.Value * Me.TextBox2.Value
>End Sub
>
>Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
> If IsNumeric(Me.TextBox1.Value) = False Or Me.TextBox1.Value = "" Then Exit Sub
> If IsNumeric(Me.TextBox2.Value) = False Then Exit Sub
> Me.TextBox3.Value = Me.TextBox1.Value * Me.TextBox2.Value
>End Sub

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