1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Excel VBA WheelConerter ユーザーフォームをマウスホイールでスクロール可能にするツール

Last updated at Posted at 2025-11-01

説明

WheelConverter は、Excel VBAのユーザーフォーム非対応であるマウスホイールによるスクロール操作を可能にするツールです。

配布

特徴

UserForm / Frame / MultiPage の各種コントロールに対してマウスホイールによるスクロールが有効になります。

仕組み

別プロセスの不可視Excelでグローバルメッセージフックを登録
 ↓
マウスホイールのメッセージをキャプチャ
 ↓
MouserDownメッセージに変換して送信
 ↓
WheelReceiverクラスに定義したコントロールのMouseDownイベントが発火
 ↓
コントロールのイベントプロシージャ内でScrollTop/ScrollHeightを変更

導入方法

WheelConverter.xlamをアドイン登録
 ↓
ユーザーブックに clsWheelReceiver をコピー
 ↓
フォームの初期化イベントで以下を呼び出し

Private WR As New clsWheelReceiver

Private Sub UserForm_Initialize()
    WR.OpenWheelConverter Me
End Sub

注意

別プロセスの不可視Excelおよびグローバルメッセージフックを停止するには、
mdl別プロセス制御モジュールの不可視プロセス終了を実行してください。
メモリが心許ない環境だとシステムが不安定になる恐れがあります。

備考

別プロセスのExcelを取得するためのコードはこちらを利用させていただきました。
https://www.excel-chunchun.com/entry/enumwindows-excel-vba
本当にありがとうございます。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?