- ベストアンサー
Accessでのマウスホイールの無効化
KenKen_SPの回答
- KenKen_SP
- ベストアンサー率62% (785/1258)
そうですか。。。 一応、参照された URL のソースを試してみたらマウスホイールを 禁止できましたが、そのままフリーズしてしまいました。 やっていることは、サブクラス化といって、本来 Windows (OS) が行っていること(この場合、マウスホイールの挙動に関する OS が発信した Access への制御メッセージ)を無理やり横取りし、 自前の処理に置き換えているわけです。 したがって、ヘタをするとアプリ、最悪 OS ごとダウンするリスキー な手法でもあり、ある程度アプリや OS に精通している方以外には お勧めできない手法なんですよね。。。 時間がなくて細かく検証してませんが、夜中か数日中にはその結果、 または参考ソースをアップしときます。 よろしければ締め切らず気長にお待ち下さい。
関連するQ&A
- マウスホイールを動かしても次のレコードに移動しない
マウスホイールを動かしても 次のレコードに移動しないように制御したいのですが http://www.accessclub.jp/bbs2/0027/beginter08905.html の通りに行ったら、 私の環境ではフリーズしてしまいます。 OS:XP OFFICE:2003 です。 フォームを開くと、VBEがずっと実行中になり、 フォームを動かすことも、フォームに値を入れる事もVBEを終わらせる事も出来ずにいます。 タスクマネージャーから無理やり終わらせるしかないです。 アクセス2003ではこの方法はダメなのでしょうか?
- ベストアンサー
- その他MS Office製品
- Access 既定値を使って・・・
お世話になります 下記参考URLになります http://www.accessclub.jp/bbs2/0043/beginter14146.html 2つめの方法ですが PC本体・パーツフォームがサブフォームの場合は どのような呼び方をすればいいのでしょうか? Public Sub SelectParts() Me.パーツ名=メインフォーム名!PC本体・パーツフォーム!.パーツ名 End Sub どなたかわかるかた宜しくお願いします
- ベストアンサー
- オフィス系ソフト
- ACCESSがクラッシュ?
ACCESS初心者です。 一応、対応できたので緊急ではありませんが非常に不思議な現象が発生しました。 もし原因や対応等についてご存知の方があればご教示願います。 経緯は時間を追って以下の通りのです。 1.ACCESSでシステムを開発(具体的にはメイン・サブフォームの作成)を行っていました。 2.一旦ウィザードでフォームを作った後、かなりあちこちをいじっておりました。いろいろなエラーメッセージが表示されていました。 3.突然、砂時計が出っ放しになってどこをクリックしても受け付けられなくなりました。 4.30分以上待っていましたが全く変わらないため、やむを得ず強制終了をかけました。(前日にDBを別名でセーブしてあったのでそこからやり直してもいいと思っていました) 5.再度ACCESSを立ち上げ、当該フォームを呼び出すと「コンパイルエラー」が表示されVBAが表示されましたが、それは作業中であったフォームではない、別のフォームのもののようです。 6.そのフォームをフォームビューで開いてもコンパイルエラーになるのはいいとして、同じDB内の全く別のフォームを実行してもコンパイルエラーが出ます。 7.何をやってもエラーになり、表示されているVBAの画面を見ると「 ate Sub ・・・・」等となっていてどうも元のコマンドの最初の方が消えてしまって不完全なコマンドになっているようです。 (当然私は初心者ですしそんなところを触った覚えも何もないのですが) 8.どうもDB全体が壊れているようでした。ACCESSの場合はすぐに壊れるという話を聞いていましたので、このDBはあきらめて閉じて、昨日セーブしておいたDBを開きました。 9.なんと!、昨日セーブしてあったDBを立ち上げ、あるフォームを実行したところ、また先ほどと同じコンパイルエラーが出ます!DBが違うはずなのになぜ??? 10.ACCESS経験者に応援を求め、とりあえず壊れたコマンドが表示されている画面の全ての行に「’」を入れてコメント行にしたところ、なんとかエラーは起きなくなりました。 以後どのDB、どのフォームを開いても大丈夫です。 以上が経緯ですが、こんなことってACCESSではありえることなのでしょうか? とりわけ、あるDBの不具合が全く別のDBにも波及するというのは全く理解できませんしこんなことではACCESSをこれから使う気も失せてしまいそうです。 何かアドバイス等あればよろしくお願いいたします。
- ベストアンサー
- その他MS Office製品
- リストボックスのスクロールバーをマウスで動かしたい
エクセル2007です。 Sheet1のA列に 1行目から順に 1 2 3 4 5 6 7 8 9 10 といれました。 ユーザーフォームを新規作成し、リストボックスを設置しました。 VBAコードは、 Private Sub UserForm_Initialize() Me.ListBox1.RowSource = "Sheet1!a1:a10" End Sub にしました。 VBE画面でF5を押して、フォームを表示させるとリストボックスにスクロールバーが表示されますが、 フォームをクリックして、マウスホイールでぐりぐりしても、リストは動きません。 画像のように、4にカーソルをあて、グリグリしてもダメです。 どうしたら動くようになるのでしょうか?
- ベストアンサー
- オフィス系ソフト
- マクロ ユーザーフォームが表示されない
いつも回答して頂き、ありがとうございます。 Sub UserForm1() UserForm1.Show End Sub と記述しましたが、エラーが発生し、ユーザーフォームが表示してくれません。 コンパイルエラー:Functionまたは変数が必要です フォームはコマンドボタンを一つ配置し、 Private Sub CommandButton1_Click() Unload UserForm1 End Sub と記述してあるだけです。何が悪いのでしょうか?御教授の程宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- アクセス イベントの発生を停止させたい
アクセスでイベントを発生しないようにしたいのですが エクセルで使用できる、Application.EnableEvents = Falseを使うと、 コンパイルエラーになります。 フォームを指定して、 .FilterOn = True を通ると、 該当のフォームのPrivate Sub Form_Current()イベントが発生してしまうので、 Application.EnableEvents = Falseのように、イベントの発生を停止させたいです。
- ベストアンサー
- その他(データベース)
- アクセス2007でのエラー
初めてアクセス使用してます。アクセス2007でマクロ実行でエラーが出て困っています。 「マクロ式またはVisual Basicコードで参照されている'***'フォームが見つかりません。」 後記として、'***'のフォームがないかコンパイルエラーかと表示されています。 '***'の名のフォームは存在しますので、どうしていいのかわかりません。アクセス自体をインストールし直すと正常に動作します。 素人作なので初歩的、根本的なミスなのかもしれませんが、良い方法があればお願いします。
- ベストアンサー
- その他(データベース)
- Access2000のVBAでコンパイルエラー
Access2000のVBAで初歩的な質問があります。 「tblShi」というテーブルがあります。 フォームにボタン「btn1」を作り、 デザインビューでボタンのプロパティを開いて イベントのクリック時のところで、 「ビルダの選択」をコードビルダにしました。 そして「Private Sub btn1_Click()」の中に、最初に Dim db As Database という記述をしています。 このフォームを開いてボタンを押すと、なぜか コンパイルエラー ユーザ定義型は定義されていません というエラーが表示されてしまいます。 たしかにコードを書いているときに、 Dim db As のところまで入れると、小さいウィンドウの中に たくさん候補が表されますが、 その中に「Database」というのがないです。 「QueryDef」とか「Workspace」とかもありませんでした。 (「Recordset」はありまして、それはコンパイルが通ります) いろいろな解説を見ても、やはり最初はどれも 「Database」型を宣言しているようなんですが… 何がよくないのでしょうか。 もしわかる方がいらっしゃったら教えてください。
- ベストアンサー
- その他(データベース)
補足
早速のレス有り難うございます。 サブクラス化・・・・?、全くわかりません。。。。 (^^;) 当方Accessに出会って1年にはなりますが、もとよりソフト開発者ではなく、 限りなくエンドユーザに近い立場であり、ましてやOSに精通など、ほど遠い 状況です。 1週間ほど前にリリースさせ、すでに社内で稼働しているアプリなのですが、 ユーザに対しては、誤ってホイールに触れないように、注意喚起して使って もらっています。これを、近々回避することができ、しかもシステム的に安定・ 安全な方法を教えていただけるのであれば、非常に助かります。 締め切らずにお待ちいたしますので、よろしくお願い致します。 以上