コンパイラ定数
Visual Basic for Applications では、#If...Then...#Else ディレクティブのみで使用するための定数が定義されています。 これらの定数は、スコープ内でグローバルであることを除き、#Const ディレクティブで定義されている定数と機能的に同等です。つまり、プロジェクト内のすべての場所に適用されます。
注:
32 ビットと 64 ビットの両方の開発プラットフォームの Win32 が True を返すので、#If...Then...#Else ディレクティブ内の順序がコードで必要な結果を返すことが重要です。 たとえば、Win32 は 64 ビットで True を返すので (Win32 は Win64 環境で互換性があります)、Win64 より前に Win32 を調べると、Win32 が True を返すため、Win64 の条件が実行されません。 次の順序では、予測可能な結果が返されます (これは Winx 定数および VBAx 定数の両方に適用されます)。
#If Win64 Then
' Win64=true, Win32=true, Win16= false
#ElseIf Win32 Then
' Win32=true, Win16=false
#Else
' Win16=true
#End If
16 ビット開発プラットフォームでは、コンパイラ定数は次のように定義されます。
定数 | 値 | 開発環境が |
---|---|---|
Win16 | True | 16 ビット互換であることを示します。 |
Win32 | False | 32 ビット互換ではないことを示します。 |
Win64 | False | 64 ビット互換ではないことを示します。 |
32 ビット開発プラットフォームでは、コンパイラ定数は次のように定義されます。
定数 | 値 | 開発環境が |
---|---|---|
Vba6 | True | Visual Basic for Applications バージョン 6.0 互換であることを示します。 |
Vba6 | False | Visual Basic for Applications バージョン 6.0 互換ではないことを示します。 |
Vba7 | True | Visual Basic for Applications バージョン 7.0 互換であることを示します。 |
Vba7 | False | Visual Basic for Applications バージョン 7.0 互換ではないことを示します。 |
Win16 | False | 16 ビット互換ではないことを示します。 |
Win32 | True | 32 ビット互換であることを示します。 |
Win64 | False | 64 ビット互換ではないことを示します。 |
Mac | True | Macintosh であることを示します。 |
Mac | False | Macintosh ではないことを示します。 |
64 ビット開発プラットフォームでは、コンパイラ定数は次のように定義されます。
定数 | 値 | 開発環境が |
---|---|---|
Vba6 | True | Visual Basic for Applications バージョン 6.0 互換であることを示します。 |
Vba6 | False | Visual Basic for Applications バージョン 6.0 互換ではないことを示します。 |
Vba7 | True | Visual Basic for Applications バージョン 7.0 互換であることを示します。 |
Vba7 | False | Visual Basic for Applications バージョン 7.0 互換ではないことを示します。 |
Win16 | False | 16 ビット互換ではないことを示します。 |
Win32 | True | 32 ビット互換であることを示します。 |
Win64 | True | 64 ビット互換であることを示します。 |
Mac | True | Macintosh であることを示します。 |
Mac | False | Macintosh ではないことを示します。 |
注:
これらの定数は Visual Basic によって提供されているため、どのレベルでも、これらと同じ名前で独自の定数を定義することはできません。
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。