#165 フォームでファンクションキーを処理するには? フォーム、VBA

フォームでファンクションキーによる操作を処理するには、まず、フォームの「キーボードイベント取得」プロパティを"はい"に設定します。その上で、フォームの"KeyDown/キークリック時"イベントプロシージャに、押されたファンクションキーごとの操作を次のように記述します。ここでは、「Shift」引数を検出することによって、ShiftキーやCtrlキー・Altキーとの組み合わせによるファンクションキー操作も分岐処理することができます
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)

  Select Case KeyCode
    Case vbKeyF1
      'ここにF1キーが押されたときの処理を記述
      'ただし、F1キーには「ヘルプ表示」の機能が
      '割り当てられていますので通常は使用しません。
      '(他の機能割り当て済みキーも同様)

    Case vbKeyF2
      If Shift = 0 Then
        'ここにF2キーが単独で押されたときの処理を記述
      ElseIf (Shift And acShiftMask) > 0 Then
        'ここにShift+F2キーが押されたときの処理を記述
      ElseIf (Shift And acCtrlMask) > 0 Then
        'ここにCtrl+F2キーが押されたときの処理を記述
      End If

    Case vbKeyF3
      'ここにF3キーが押されたときの処理を記述
    Case vbKeyF4
      'ここにF4キーが押されたときの処理を記述
    Case vbKeyF5
      'ここにF5キーが押されたときの処理を記述
    Case vbKeyF6
      'ここにF6キーが押されたときの処理を記述
    Case vbKeyF7
      'ここにF7キーが押されたときの処理を記述
    Case vbKeyF8
      'ここにF8キーが押されたときの処理を記述
    Case vbKeyF9
      'ここにF9キーが押されたときの処理を記述
    Case vbKeyF10
      'ここにF10キーが押されたときの処理を記述
  End Select

End Sub

※参考「#091 ダイアログをファンクションキーで閉じるには?」
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします
 

Copyright © T'sWare All rights reserved