フォームで入力しているときにここでファンクションキーが使えたら楽だなぁ…って思うことありませんか??
私は見積書で項目を入力するにあたって、商品名や顧客名を検索したりするのに、いちいちマウスに持ち替えてボタンを押すのはめんどくさいな…って思うんです。
そこで、ボタンはボタンとしても使うんですが、ファンクションキーも割り当てしました。
今回はボタンをファンクションキーへ割り当てるコードをご紹介します。
最初に使用するフォームのフォームプロパティの『すべて』の一番下にある『キーボードイベント取得』プロパティを『はい』にします。
さらりと書いていますが、コレかなり重要です!!これをやらないと動きません。
左上の■の位置でクリックするとフォーム全体のプロパティになります。
『フォーム』と表示になっていればOKです。
それではコードです。
ボタンをファンクションキーへ割り当てるコード
Private Sub 得意先コード_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF6 Then
Me.得意先コード = ""
DoCmd.OpenForm "得意先検索窓"
Forms!得意先検索窓!得意先検索.SetFocus
End If
End Sub
このコードは例なんですが、得意先コード記入欄にカーソルがきた時にF6を押すと『得意先検索窓』というフォームが開くようになっています。
動作はキークリック時になります。キークリックはKeyDownになるんですね。
その下の IF KeyCode = vbkeyF6 Then がファンクションのコードになります。
あとはそこに条件(動き)を当てはめます。
コードの意味
F6を押すと得意先コードは空欄(Nullでもかまいません)になって、得意先検索窓フォームを開いて、『得意先検索』というテキストボックスにセットフォーカス(カーソルを持っていく)
けっこう使える機能なので、ぜひ使ってみてください。
※ところが初起動時のみエラーが発生することが判明。
対処の仕方はこちらの記事を見てください。
この記事を読んだ方へおすすめの本