Excel VBA質問箱 IV

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

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


13295 / 13644 ツリー ←次へ | 前へ→

【6054】UserFormからの値の取得とエラー グレミー 03/6/14(土) 3:52 質問
【6071】Re:UserFormからの値の取得とエラー Hirofumi 03/6/15(日) 14:48 回答
【6107】Re:UserFormからの値の取得とエラー グレミー 03/6/16(月) 17:28 お礼

【6054】UserFormからの値の取得とエラー
質問  グレミー  - 03/6/14(土) 3:52 -

引用なし
パスワード
   UserFormを作成して,入力した値からマクロを実行するのですが、
指定した変数以外の型のデータが入力された場合に,
メッセージボックス等を使って
エラーの警告の表示をさせたいと思っています。
例えば,
 何人ですか?という質問をUserFormを使ってしたとして,
 指定変数は整数(Integer)としたときに,
 10.5のような小数点,また入力ミスでAAA等の文字が入力
 されたときに警告メッセージを表示させる
です。

よい方法はありますでしょうか。

【6071】Re:UserFormからの値の取得とエラー
回答  Hirofumi E-MAIL  - 03/6/15(日) 14:48 -

引用なし
パスワード
   よい方法かどうかは、解りませんが
こんなかな?
尚、アルファベットの組み合わせか何かで、
数値として認められる物が有った様な気がしますが其処までは面倒を見ていません

Private Sub TextBox1_BeforeUpdate(ByVal Cancel _
              As MSForms.ReturnBoolean)
  With TextBox1
    If .Value <> "" Then
      If IsNumeric(.Value) Then
        If InStr(1, .Value, ".", vbBinaryCompare) = 0 Then
          '長整数(Long型)の場合
'          If -2147483648# <= .Value _
'                  And .Value <= 2147483647 Then
          If -32768 <= .Value And .Value <= 32767 Then
            Exit Sub
          End If
        End If
      End If
      Beep
      MsgBox "入力値が整数として認められません"
      Cancel = True
    End If
  End With
  
End Sub

【6107】Re:UserFormからの値の取得とエラー
お礼  グレミー  - 03/6/16(月) 17:28 -

引用なし
パスワード
   大変参考になりました。
どうもありがとうございました。

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