【VBA×WindowsAPI】IsWindow関数の使い方
IsWindow関数は指定のウィンドウが存在するかを判定するための関数です。
Windowsのウィンドウには「ウィンドウハンドル」というウィンドウを識別するための特別な識別子(数値データ)がそれぞれに割り振 ...
【VBA×WindowsAPI】AppendMenu関数の使い方
AppendMenu関数は指定のメニューの末尾に新規の項目を作成するための関数です。
ここでいうメニューとはメニューバー、ドロップダウンメニュー、サブメニュー、またはコンテキスト(ショートカット)メニュ ...
【VBA×WindowsAPI】UserFormを右クリックした時にコンテキストメニューを表示させる
VBAのUserForm上で右クリックした時にコンテキストメニューを出したいという場面に出くわすことがあります。WindowsAPIにはメニューバーのメニューをはじめとした、メニューを作成するための機能が存在します。このうちポップアッ ...
【VBA×WindowsAPI】DestroyMenu関数の使い方
DestroyMenu関数は指定したメニューを破棄し、メモリを解放するための関数です。
WindowsAPIではCreateMenu関数やCreatePopupMenu関数を呼び出すことで、メモリ上に ...
【VBA×WindowsAPI】CreatePopupMenu関数の使い方
CreatePopupMenu関数はドロップダウンメニュー、サブメニュー、コンテキストメニュー(ショートカットメニュー)を作成するための関数です。この関数で作成されるメニューは”空の状態& ...
【VBA×WindowsAPI】[色の設定]ダイアログを表示する
VBAマクロ開発時にユーザーに色を選択させたいという場面に出くわすことがあります。Excel VBAの場合、組み込みダイアログ「Application.Dialogs(xlDialogEditColor).Show()」を利用すること ...
【VBA×WindowsAPI】UserFormに日付選択コントロール(カレンダー)を作成する
VBAで日付を入力させる際にカレンダーから選択させたいという場面に出くわすことがあります。少し前ですとAccessのカレンダーコントロールを使うことで実現できましたが、現在のバージョンでは廃止されて使うことが出来なくなっており、VBA ...
【VBA×WindowsAPI】UserFormのサブクラス化とウィンドウプロシージャ設定
VBAでUserFormを使った開発をしているときに「このイベントがあったらいいな」と思うことはしばしばあります。例えばマウスの中ボタンクリックのイベントやマウスホイールの回転イベント、ファイルのドラッグ&ドロップのイベントなど様々で ...
【VBA×WindowsAPI】UserFormへのドラッグ&ドロップでファイルパスを取得
VBAのUserFormにファイルを入力してもらう際にファイル選択ダイアログを使って入力させる手法は一般ですが、場合によってはUserFormへのドラッグ&ドロップでファイルを入力させたいということがしばしばあります。このときUser ...
【VBA×WindowsAPI】CloseWindow関数の使い方
CloseWindow関数は指定したウィンドウを最小化するための関数です。
関数名にCloseと付いているためウィンドウを”閉じる”関数のようにも見えますが、ウィンドウ自体 ...
【VBA×WindowsAPI】GetCursorPos関数の使い方
GetCursorPos関数は現在のマウスカーソル位置の座標を取得するための関数です。
Windowsの座標にはクライアント領域座標とスクリーン座標という2つの座標系が存在します。
クラ ...
【VBA×WindowsAPI】UserFormのタイトルバーにアイコンを設定する
VBAでマクロを作成しているとき、他のアプリケーションと同じようにUserFormウィンドウのタイトルバーにアイコンを付けたいと感じるときが稀にあります。しかしUserFormはタイトルバーの文字列(Caption)を変えることはでき ...
【VBA×WindowsAPI】SetCursorPos関数の使い方
SetCursorPos関数はマウスカーソルを指定の座標に移動するための関数です。
Windowsの座標にはクライアント領域座標とスクリーン座標という2つの座標系が存在します。
クライア ...
【VBA×WindowsAPI】ScreenToClient関数の使い方
ScreenToClient関数はスクリーン基準の座標をウィンドウのクライアント領域基準の座標に変換するための関数です。クライアント領域とはタイトルバーや境界線などを除いたウィンドウのメイン描画部分のこ ...