(作成手順の最後で完成したExcelファイルを無料ダウンロード出来ます)

<作成手順>
●「Visual Basic Editor」を起動します。
Excel2003・・・メニューバー「ツール→マクロ→Visual Basic Editor」
Excel2007以降・・・リボン「開発→Visual Basic Editor」(開発タブが表示されていない場合は「ファイル→オプション→リボンのユーザー設定→メインタブ→[開発]をチェックONする」)
●ツールバー「挿入→ユーザーフォーム」で新規フォームを作成して、
フォームのオブジェクト名「テンキーフォーム」、Captionプロパティ「テンキー」とし、
フォーム上にコマンドボタン9個(オブジェクト名「cmd数字1」~「cmd数字9」)を配置します。

コマンドボタン3個(オブジェクト名「cmd数字0」「cmd数字00」「cmd小数点」)を配置します。

コマンドボタン3個(オブジェクト名「cmdクリア」「cmdバック」「cmd正負」)を配置します。

ラベル(オブジェクト名「lbl値」)とコマンドボタン(オブジェクト名「cmd送信」)を配置します。

●各処理のVBAコードを記述します。

Option Explicit
Private Sub UserForm_Initialize()
rtnValue = Null '値受渡し用変数を初期化
Me.lbl値 = 0 '値ラベルを初期化
End Sub
Private Sub cmd数字0_Click() '「0」のボタン クリック時の処理
Call ClickNumber(0) '数字のボタン押下時の処理(下部へ記述)
End Sub
Private Sub cmd数字00_Click() '「00」のボタン クリック時の処理
Call ClickNumber("00")
End Sub
Private Sub cmd数字1_Click() '「1」のボタン クリック時の処理
Call ClickNumber(1)
End Sub
※中略 「cmd数字2」~「cmd数字9」
Private Sub cmd小数点_Click() '「.」のボタン クリック時の処理
Call ClickNumber(".")
End Sub
Private Sub ClickNumber(prmNum) '数字のボタン押下時の処理
'小数点が既にあり、2個目の小数点が押された場合は処理を抜ける
If InStr(1, Me.lbl値, ".") >= 1 And prmNum = "." Then
Exit Sub
End If
Me.lbl値 = Me.lbl値 & prmNum '入力済み数値に今回押された数字を連結
If InStr(1, Me.lbl値, ".") = 0 Then
Me.lbl値 = CDbl(Me.lbl値) '数値として再セット(先頭0等を排除)
End If
End Sub
Private Sub cmdクリア_Click() '「C」ボタン クリック時の処理
Me.lbl値 = 0 '値を0にする
End Sub
Private Sub cmdバック_Click() '「←」ボタン クリック時の処理
If Len(Me.lbl値) <= 1 Then
Me.lbl値 = 0 '値が1文字以下なら0をセット
Else
Me.lbl値 = Mid(Me.lbl値, 1, Len(Me.lbl値) - 1) '右端の1文字をカット
If Me.lbl値 = "-" Then
Me.lbl値 = 0 'マイナス記号のみなら0をセット
End If
End If
End Sub
Private Sub cmd正負_Click() '「+/-」ボタン クリック時の処理
Me.lbl値 = CDbl(Me.lbl値) * -1 'マイナス1を掛ける
End Sub
Private Sub cmd送信_Click() '「送信」ボタン クリック時の処理
rtnValue = Me.lbl値 '値の受渡し用の変数へセット
Unload Me 'テンキーフォームを閉じる
End Sub
●標準モジュールへテンキーフォームの値の受渡し用の変数を宣言します。

Option Explicit
Public rtnValue As Variant 'テンキーフォームの値の受渡し用
●テンキーフォームの呼び出し


Option Explicit
Private Sub テンキーボタン_Click()
テンキーフォーム.Show vbModal 'テンキーフォームの呼び出し
Range("B2") = rtnValue 'テンキーフォームから受け渡された値をB2セルへセット
End Sub
<完成>

完成したファイルを下記ボタンからダウンロード出来ます。
