【VBA×WindowsAPI】SetWindowLongPtr関数の使い方
SetWindowLongPtr関数は指定したウィンドウに関する情報をセットするための関数です。
WinAPIにはSetWindowLong関数という同じ機能を持つ関数が存在しますが、Set ...
【VBA×WindowsAPI】UserFormに回転させたテキスト(文字列)を描画する
VBAでUserFormを作成していると文字を回転させて表示させたいという場面に出くわすことがあります。しかしラベルをはじめコントロールは回転させることが出来ないので、VBAの標準機能だけではこれを実現することはできません。
【VBA×WindowsAPI】GetParent関数の使い方
GetParent関数は指定したウィンドウの親ウィンドウのハンドルを取得するための関数です。
Windowsのウィンドウにはそれぞれを識別するためにウィンドウハンドルというものが設定されており、Windo ...
【VBA×WindowsAPI】マウスカーソル位置にあるウィンドウのハンドルを取得する
WindowsAPIを使ってウィンドウの操作を行うとき、多くの場合はウィンドウハンドルを取得する必要があります。ウィンドウハンドルを取得するための関数は様々存在しますが、「指定のウィンドウ内にある特定の子ウィンドウのハンドルをパッと調 ...
【VBA×WindowsAPI】指定のウィンドウ(UserForm)に図形を描画する
VBAのUserFormに何かしらの図形を描画したいという場合、VBAの標準機能だけでは実現することが難しいです。Frameを細くして直線に見立てたり、Imageとして用意しておいた図形を挿入したりすることはできますが、どちらもあまり ...
【VBA×WindowsAPI】FlashWindowEx関数の使い方
FlashWindowEx関数は指定したウィンドウをフラッシュ(点滅)させるための関数です。
ここでいうフラッシュとは、対象のウィンドウに対してアクティブ状態の描画と非アクティブの ...
【VBA×WindowsAPI】GetWindowLongPtr関数の使い方
GetWindowLongPtr関数は指定したウィンドウに関する情報を取得するための関数です。
WinAPIにはGetWindowLong関数という同じ機能を持つ関数が存在しますが、GetW ...
【VBA×WindowsAPI】指定のウィンドウ(UserForm)を常に最前面に表示する
VBAでマクロ開発をしているとUserFormが他のウィンドウの後ろに隠れてしまうことがままあります。ウィンドウは奥行きの順番である「Zオーダー」という情報を持っていまが、このZオーダーを操作することでUserForm(ウィンドウ)の ...
【VBA×WindowsAPI】クリップボード内にテキストデータ(文字列)をセットする
VBAでクリップボードの値を取得したりセットしたりするには「DataObject」オブジェクトを使うことが一般的ですが、ここではWindows APIの関数を使ってVBAでクリップボード内に任意の文字列をセットする方法を解説していきま ...
【VBA×WindowsAPI】クリップボード内のテキストデータ(文字列)を取得する
VBAでクリップボードの値を取得したりセットしたりするには「DataObject」オブジェクトを使うことが一般的ですが、ここではWindows APIの関数を使ってクリップボード内の文字列を取得する方法を解説していきます。
【VBA×WindowsAPI】GetClipboardData関数の使い方
GetClipboardData関数は指定した形式でクリップボードからデータを取得する関数です。
たとえばクリップボード内にテキストデータが格納されている場合に、この関数でテキストデータ形式 ...
【VBA×WindowsAPI】SetForegroundWindow関数の使い方
SetForegroundWindow関数は指定のウィンドウを最前面に表示するための関数です。
ウィンドウの指定にはウィンドウハンドルを使用します。
ウィンドウハンドルとは ...
【VBA×WindowsAPI】ClientToScreen関数の使い方
ClientToScreen関数はウィンドウのクライアント領域基準の座標をスクリーン基準の座標に変換するための関数です。クライアント領域とはタイトルバーや境界線などを除いたウィンドウのメイン描画部分のこ ...
【VBA×WindowsAPI】ウィンドウ(UserForm)を透明/半透明にする
VBAでUserFormをはじめとした指定のウィンドウを透明化したいと思うことはごく稀にあります。
VBAだけの機能では実現できませんが、Windows APIのいくつかの関数を呼び出すことでコードとしては簡単に設定ができます ...