goo blog サービス終了のお知らせ 

パソコンカレッジ スタッフのひとりごと

パソコンスクールのスタッフが、
初心者から上級者まで役立つ情報をお伝えします。

F12キーを押したとき、フォームを閉じるには(Access2000以降)

2009-04-25 12:33:42 | Access(アクセス)
またまた、生徒さんからの質問です。

この生徒さんは、勤務先の要請もあり、
現在、Accessを使っての業務管理システムを一緒に作っています。
大変勉強熱心で、上司も完成を楽しみにしているそうです。

「先生、ふと思ったんですが、
キーボードの任意のキーを押して、あるアクションを起こすことは
可能ですか?」

「といいますと・・・」

「たとえば、F12キーを押すと、フォームが閉じるとか、
F11キーを押すと、新規レコードに移動するとか・・・」

「それは、もちろん可能ですよ。
操作性も向上しますよね。それでは、やってみましょうか。」

「はい」



任意のフォームを開きます。
以下が、今回のサンプルです。
Access2007ですが、以前のバージョンでも大丈夫です。
F業者マスタという名前のフォームです。




それでは、デザインビューに切り替えて、
フォームのプロパティを表示します。

下の図の赤マルの部分をクリックすると
フォームのプロパティが表示されます。



イベントタブの中から、「キークリック時」を選択します。
すると、右端にボタンが出てきますので、それをクリック。



「ビルダの選択」ダイアログボックスが表示されたら、
「コードビルダ」を選択して、OKをクリックします。



Visual Basic Editorが起動します。

以下のように入力してください。

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
  If KeyCode = vbKeyF12 Then
    DoCmd.Close
  End If
End Sub



今回は、F12キーが押された時に、フォームを終了するという内容の
コードとなります。

さて、ここで重要なことがあります。
もう一つ、大事な設定があるのですよ!!!


フォームのプロパティで、
「キーボードイベントの取得」を「はい」にすることです!




それでは、フォームビューに切り替えましょう。
F12キーを押してみてください。
ほら、閉じたでしょう?

なお、今回は、F12キーを押したときという設定なので、
先ほどの「キーボードイベントの取得」を「いいえ」のままにしておくと、

以下のように、「名前を付けて保存」ダイアログボックスが表示されてしまいます。しかも、フォームは閉じません!!!
お気をつけください。



「へえ、今日もいいことを勉強しました(^^)」

だい

コメント (4)    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 日付と文字を組み合わせて表... | トップ | VistaのUAC(ユーザーアカウ... »
最新の画像もっと見る

4 コメント

コメント日が  古い順  |   新しい順
Unknown (bebiママ)
2009-04-25 21:43:47
返信する
bebiママさんへ (だい)
2009-04-26 11:11:04
返信する
Unknown (まっつう)
2009-04-27 04:23:00
こんにちわ!
アクセスですね!
うちの奥さんもエクセル、ワードは勉強したけど、我が家のPCにアクセスが入っていないので勉強できない・・・
と前に言っていました^^;

僕にはあまり縁がありませんが・・・

小松菜まきましたか?
一週間くらいで芽が出てくると思いますよ^^
返信する
まっつうさんへ (だい)
2009-04-27 22:43:28
確かに、Accessは、自分で購入しないといけないんですよ。
しかも、けっこう高いんですよね。

機会があったら、Accessにも触れてみてください。
これからも、よろしくお願いしますね。
返信する

コメントを投稿

Access(アクセス)」カテゴリの最新記事