ブログ主が仕事や個人的に学んだPC系・プログラミング系(VBAとかHTML)について書いていく備忘録ブログ。
※ここで記載する内容はあくまで「個人的に」上手くいく内容です。ご使用には十分注意してください
Posted by 若槻風亜 - 2013.07.03,Wed
(対象)Access VBA
(確認)Access2003
今回はマウスホイールの制御についてです。
「Access VBA マウスホイール制御」
(確認)Access2003
今回はマウスホイールの制御についてです。
「Access VBA マウスホイール制御」
――――――――
○やりたいこと
――――――――
――――――――
→フォームでマウスホイールをするとレコードが移動してしまうので
それをなくす
――――――――
○ソース
――――――――
Dim bbb As Integer
'=============================================
' フォームの読み込み時
'=============================================
Private Sub Form_Load()
bbb = 0
End Sub
――――――――
☆やっていること
――――――――
フォームの読み込み時に変数bbbに0を入れる
'=============================================
'レコード移動時
'=============================================
Private Sub Form_Current()
If Me.NewRecord Then Exit Sub
Me.[コントロール名].SetFocus
Me.Dirty = True
End Sub
――――――――
☆やっていること
――――――――
レコード移動時の処理。
1.次のレコードが新しいレコードの時は作用しない
2.どれでもいいからコントロールを選んでおく。
これを選ばないとエラーになる
これを選ばないとエラーになる
3.「Dirty」はカレントレコードの変更の有無を表す。
今はTrueなので変更有り→変更有り=更新前処理が入る
今はTrueなので変更有り→変更有り=更新前処理が入る
'=============================================
' マウスホイールを動かした時
'=============================================
Private Sub Form_MouseWheel(ByVal Page As Boolean, ByVal Count As Long)
bbb = Count
End Sub
――――――――
☆やっていること
――――――――
マウスホイールが動かされたらbbbにCountの値を入れる
(Countの値=ホイールされて動こうとしているレコードの数)
'=============================================
' レコードに変更があった時
'=============================================
Private Sub Form_BeforeUpdate(Cancel As Integer)
If bbb <> 0 Then
Cancel = True
bbb = 0
End If
End Sub
――――――――
☆やっていること
――――――――
bbbの値が0でない時にCancelをTrueにして処理をキャンセルする。
※1ここでキャンセルされると移動もキャンセルになる
※2判断は必ず「0でない」にする。bbbの値はマイナス値にもなる
※3bbbの値を初期化しておく
(上のレコード移動時の処理を超えると自動的に入ってくる)
=======================
PR
Comments
Post a Comment
<<
Excel 列名-列番号変換ファンクションHOME
プロフィール
HN:
若槻風亜
性別:
女性
職業:
会社員
趣味:
創作、プログラミング
自己紹介:
仕事や個人で学んだことをまとめておきたかったがために備忘録ブログを立ち上げました。
あくまで自分が学んだこと・自分が出来たことなので、ご覧くださる場合は参照レベルでお願いします。
あくまで自分が学んだこと・自分が出来たことなので、ご覧くださる場合は参照レベルでお願いします。
ブログ内検索
カレンダー
最新記事
(12/31)
(12/30)
(03/27)
(11/09)
(10/07)
P R
最新トラックバック
コガネモチ
フリーエリア
Template by mavericyard*
Powered by "Samurai Factory"
Powered by "Samurai Factory"