テキストボックスに数字しか入力できないようにする
標準モジュールに下記のコードを記述します。
Public Function chkNumber(ByVal KeyCode As Integer) As Integer Dim Flag As Boolean Flag = ((KeyCode >= 48) * (KeyCode <= 57)) _ + ((KeyCode >= 96) * (KeyCode <= 105)) _ + (KeyCode = 8) + (KeyCode = 13) + (KeyCode = 9) If Flag Then chkNumber = KeyCode Else chkNumber = 0 End If End Function
下記サイトを参考にしました。
VBAのTextBoxに半角数字のみ入力したい -VBAでTextBox2には半角数字の- Visual Basic(VBA) | 教えて!goo
テキストボックスのキークリック時のイベントプロシージャに下記コードを記述します。
キー入力時に記述すると「Ctrl」+「V」が有効になってしまうので、キークリック時に記述します。
Private Sub txtSample_KeyDown(KeyCode As Integer, Shift As Integer) KeyCode = chkNumber(KeyCode) End Sub
ショートカットメニューの無効化
以下の手順により右クリックメニューによる「貼り付け」を防止します。
「ファイル」タブの「オプション」をクリック
↓
「Accessのオプション」ダイアログボックスを表示
↓
「カレントデータベース」をクリック
↓
「既定のショートカットメニュー」のチェックを外す