お世話になります。
下記のコードですが
If TextBox1.Value <> "" And TextBox2.Value <> "" Then
TextBox3.Value = TextBox1 * TextBox56
End If
テキストボックス1に -5を入力
テキストボックス2に 5を入力
テキストボックス3が -25になります。
今度は
テキストボックス1に 5を入力
テキストボックス2に -5を入力しようとすると、-を入力した時点でデバックとなります。
数 × -数 を行いたいのですが、
どのようにしたらよいのでしょうか?
教えて下さい。
ちなみに、テキストボックス2から、-5を入力するとデバックしません。
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
<>””だとNULLで無い、と判定ている。
数字かどうかで判定する。
If IsNumeric(TextBox1.Value) And IsNumeric(TextBox2.Value) Then
TextBox3.Value = TextBox1 * TextBox2
End If
ご回答ありがとうございます。
If IsNumeric(TextBox8.Value) And IsNumeric(TextBox10.Value) Then
TextBox11.Value = TextBox8 * TextBox10
myTH1 = TextBox8.Value * TextBox10.Value
ElseIf TextBox8.Value = "" Or TextBox10.Value = "" Then
TextBox11.Value = ""
myTH1 = 0
End If
マイナスが入りました。
本当に助かりました。
ありがとうございます
No.5
- 回答日時:
こんな感じではいかがですか?
-----------------------------------------------------
Private Sub TextBox1_Change()
If IsNumeric(TextBox1.Value) Then
If IsNumeric(TextBox2.Value) Then
TextBox3.Value = TextBox1.Value * TextBox2.Value
End If
End If
End Sub
-----------------------------------------------------
ちなみになぜエラーになったかと言うと、Change イベントは1文字づつイベントが発生してしまうため「-」だけでもイベントが発生してしまい「-」では計算が出来ないためです。またなぜ最初に「-」の方はエラーにならなかったかと言うとテキストボックス2が空欄だったため計算されなかったためです。
No.4
- 回答日時:
Change()イベントに書いているなら当たり前ですね。
「-」は数値ではありませんから。
せめてこれくらいはすればどうでしょうか。
Private Sub TextBox1_Change()
If TextBox1.Value = "" Or TextBox2.Value = "" Then
Exit Sub
End If
If Not IsNumeric(TextBox1.Value) Or Not IsNumeric(TextBox2.Value) Then
Exit Sub
End If
TextBox3.Value = TextBox1.Value * TextBox2.Value
End Sub
とかにしとけばいいのでは。
この場合、「.1」、「-.1」、更には全角数字も数値とみなします。
また、入力値に、特定の桁数までという制御がないので、結果が15桁を超えると「1E+15」などという結果になります。
No.3
- 回答日時:
TextBox3.Value = TextBox1 * TextBox1 を
TextBox3.Value = TextBox1.Value * TextBox2.Value
にしては、どうでしょうか。
こちらで、確認するとTextBox1にマイナスの値をいれても、TextBox2にマイナスの値をいれても
何れも正常に動作します。
ご回答ありがとうございます。
全文書かなくてすみません。
Private Sub TextBox1_Change()
If TextBox1.Value <> "" And TextBox2.Value <> "" Then
TextBox3.Value = TextBox1.Value * TextBox2.Value
End If
これですと、デバックになりました。
ただ、参考になりました。
ありがとうございます。
No.1
- 回答日時:
念のため確認ですが
「TextBox3.Value = TextBox1 * TextBox56」は「TextBox3.Value = TextBox1.Value * TextBox2.Value」の転記ミスですよね。
ありがとうございます。
4行目は
TextBox3.Value = TextBox1 * TextBox2
の間違いです。
Private Sub TextBox1_Change()
If TextBox1.Value <> "" And TextBox2.Value <> "" Then
TextBox3.Value = TextBox1 * TextBox1
End If
End Sub
Private Sub TextBox2_Change()
If TextBox1.Value <> "" And TextBox2.Value <> "" Then
TextBox3.Value = TextBox1 * TextBox1
End If
End Sub
こんな書き方をしています。
宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォームで銀行に対応した支店コードの入力ができません Sheet1のA列に銀行名、B列に銀行 5 2022/07/28 17:50
- Visual Basic(VBA) ExcelVBAでユーザーフォームでテキストボックスなどからセルに連続して入力するコーディングの際の 2 2022/06/29 22:51
- Visual Basic(VBA) Excel VBA ユーザーフォーム内のラベルにテキストボックスの小計を出す方法 5 2022/08/17 14:27
- Visual Basic(VBA) Selenium Basicの件 5 2023/04/10 20:55
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Visual Basic(VBA) テキストボックスで入力 9 2022/11/09 17:00
- その他(Microsoft Office) エクセルのマクロを教えてください。 1 2023/01/27 09:05
- Visual Basic(VBA) フレーム内のオプションボタンの選択結果をセルに書き出したい。 図のような預金種目というフレームにオプ 2 2022/07/29 11:12
- JavaScript javascriptのちょっとした動作不良(原因は突き止めたのですが) 1 2023/06/15 19:58
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Excel VBA ユーザーフォーム内のラベルにテキストボックスの計算結果を出す方法
Visual Basic(VBA)
-
VBA テキストボックスの計算
Visual Basic(VBA)
-
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
-
4
Excel vbaで複数のテキストボックスの足し算
Visual Basic(VBA)
-
5
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
6
エクセルVBA テキストボックスに3桁ごとにコンマ
Visual Basic(VBA)
-
7
Excel VBA ユーザーフォーム内のラベルにテキストボックスの小計を出す方法
Visual Basic(VBA)
-
8
カンマ区切り
Visual Basic(VBA)
-
9
エクセルVBA ユーザーフォームの中での計算
Excel(エクセル)
-
10
エクセルVBAでテキストボックスに入力があった場合のみ、ワークシートに転記したい
Visual Basic(VBA)
-
11
UserForm1.Showでエラーになります。
工学
-
12
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
13
コンボボックスにリストが表示されません・・・
Excel(エクセル)
-
14
TextBoxから数字が文字として入力される?
Visual Basic(VBA)
-
15
テキストボックスの番号を使ったFor~Next文について
Visual Basic(VBA)
-
16
エクセル ユーザーフォームで数値の合計を表示するには
Excel(エクセル)
-
17
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
18
ユーザーフォーム内のテキストボックス内の書式設定
Excel(エクセル)
-
19
エクセル VBA コンボボックスの計算
Excel(エクセル)
-
20
テキストボックスのvalueとtextの違い
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
首吊りどこ締めるの
-
中出しをするとお腹が痛い・・・。
-
勃起する時って痛いんですか? ...
-
腕を見たら黄色くなってる部分...
-
射精をして1週間以内に尿検査を...
-
彼女のことが好きすぎて彼女の...
-
精子が黄色?
-
検便についてです。 便は取れた...
-
至急!尿検査前日にオナニーし...
-
白血球が多いとどんな心配があ...
-
これって喉仏ですか? 私は女性...
-
精子に血が・・・
-
尿検査前日に自慰行為した時の...
-
高校3年でピンサロに行くことは...
-
イタリアから帰国する際、肉製...
-
納豆食べた後の尿の納豆臭は何故?
-
筋トレするとチンコが縮んじゃ...
-
EXCELで式からグラフを描くには?
-
風俗店へ行く前のご飯
-
尿検査の前日は自慰控えたほう...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
至急!尿検査前日にオナニーし...
-
首吊りどこ締めるの
-
尿検査の前日は自慰控えたほう...
-
尿検査前日に自慰行為した時の...
-
検便についてです。 便は取れた...
-
白血球が多いとどんな心配があ...
-
中出しをするとお腹が痛い・・・。
-
射精をして1週間以内に尿検査を...
-
彼女のことが好きすぎて彼女の...
-
腕を見たら黄色くなってる部分...
-
勃起する時って痛いんですか? ...
-
変な話しになります。尿検査で...
-
これって喉仏ですか? 私は女性...
-
EXCELで条件付き書式で空白セル...
-
男です。昨日の午後3時くらいに...
-
今朝、毎朝の習慣でオナニーし...
-
納豆食べた後の尿の納豆臭は何故?
-
1日前の検尿
-
値が入っているときだけ計算結...
-
精子が黄色?
おすすめ情報