引数のデータ型

Microsoft Office 2000/Visual Basic プログラマーズ ガイド   

C/C++ と VBA では、使用されるデータ型およびその表記法が異なります。次の表には、DLL 関数で使用される一般的なデータ型、および対応する VBA のデータ型がいくつか示されています。この表に表記されていないデータ型を使用する場合は、この章の「その他の参考資料」に一覧されている参考資料を参照してください。

C/C++ のデータ型 ハンガリー記法のプリフィックス 説明 VBA のデータ型
BOOL b 8 ビットのブール値。ゼロは False、ゼロ以外は True を示します。 ブール型 (Boolean) または長整数型 (Long)
BYTE ch 8 ビットの符号なしの整数。 バイト型 (Byte)
HANDLE h 32 ビットの符号なしの整数で、Windows オブジェクトに対するハンドル。 長整数型
int n 16 ビットの符号付きの整数。 整数型 (Integer)
long l 32 ビットの符号付きの整数。 長整数型
LP lp C/C++ 構造、文字列、関数、またはメモリに存在するその他のデータをポイントする 32 ビットの long ポインタ。 長整数型
LPZSTR lpsz C 形式の Null 終端の文字列をポイントする 32 ビットの long ポインタ。 長整数型

以上のデータ型およびプリフィックスを把握しておくことは重要ですが、前の Win32API.txt では、VBA で使用可能な Declare ステートメントについて説明しています。この Declare ステートメントをコードで使用する場合、関数の引数は適切な VBA データ型で定義済みです。

適切なデータ型を定義して渡す場合、DLL 関数の呼び出しは VBA 関数の呼び出しとほとんど同じです。例外については次で説明します。