VBAとC言語のデータ型対応

先日 VBAからwinAPIを呼び出し、使用する方法  を学びました。

そこで今回はwinAPIで使用されているC言語と、VBAのデータ型の対応を調べました。

APIをVBAで使用するためには、使用するwin APIをVBA上で宣言する必要があります。その際引数や戻り値のデータ型を指定しなければなりませんが、VBAとC言語ではデータ型が異なります。

winAPIではC言語の入門書によく出てくるint や long等のデータ型だけでなく、様々な種類のデータ型が出てきます。

 

 

データ型の対応

 

 C言語  VBA
 int  Long
 Long  Long
 DWORD  Long
 HWND  Long
 BOOL  Long
 NULL  Long
 Short  Integer
 WORD  Integer
 ATOM  Integer
 BYTE  Byte
 Char  Byte

 

 

データ型の使用場所

WORD型

符号なし16 bit 整数です。

定義は以下の通りです。

 

DWORD型

符号なし32bit 整数です。

定義は以下の通りです。

 

ATOM 型

符号なし16 bit 整数で、アトムテーブル使用時に用いられるデータ型です。

定義は次の通りです。

 

HWMD型

Windowのハンドルを扱う場合に使用するデータ型です。

定義は次の通りです。

 

PVOID型

PVOID型はvoidポインターのことで、すべての型のポインターを格納することができます。

定義は次の通りです。

 

BOOL型

BOOL型は真理値(真・偽、TRUE・FALSE、1・0等)を扱うデータ型です。

定義は以下の通りです。

 

 

参考文献

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA