ID : 117
#Ifndef ... #Endif
機能
指定したマクロが定義されていないかを判定し、コンパイルするソースコードを選択します。
構文
#Ifndef マクロ名 コード1 #Elif Defined(マクロ名) コード2 #Else コード3 #Endif
指定項目
- マクロ名
- マクロ名を指定します。
- コードn
- ソースコードを指定します。
解説
指定したマクロが定義されていないかを判定し、コンパイルするソースコードを選択します。
マクロ名が定義されていなければコード1をコンパイルし、コード2およびコード3はコンパイルしません。
マクロ名が定義済みならば、条件を判定しコード2もしくはコード3のいずれかをコンパイルします。
#If Not(Defined(マクロ名)) ... と同じです。
関連項目
注意事項
-
用例
'!TITLE "条件コンパイル"
' マクロ名が定義されていないか判定し、aaaに値を加算
#Define TEST 10
Sub Sample_IfndefEndif
Dim aaa As Integer
aaa = 10
' マクロ名TESTが定義されていない場合
#Ifndef TEST
aaa = aaa + 10
' メッセージ出力ウィンドウにaaaの値を表示
PrintDbg "aaa = " & aaa
' マクロ名TEST2が定義されている場合
#Elif defined( TEST2 )
aaa = aaa + 20
' メッセージ出力ウィンドウにaaaの値を表示
PrintDbg "aaa = " & aaa
' マクロ名TEST1、TEST2共に定義されていない場合
#Else
aaa = aaa + 30
' メッセージ出力ウィンドウにaaaの値を表示
PrintDbg "aaa = " & aaa
#Endif
End Sub
ID : 117