HOME > 即効テクニック > AccessVBA > コントロール > 長い行にわたるコメント化に「#If 0 Then ...」を使う

即効テクニック

コントロール

長い行にわたるコメント化に「#If 0 Then ...」を使う

(Access 97)
●概要●
行頭にシングルクォーテーション(')をつけて、実行行を無効にする(コメント化する)ことがあります。ただ、デバッグ等の際に何度も(')をつけたり外したりする場合、行数が多いとかなり面倒です。
そんな場合は、「#If...Then...#Else ディレクティブ」で代用できます。

サンプルでは #If の後の式を 0(偽) としているので、#End If までの行はコンパイルされず、実行対象外となります。逆に0以外、例えば #If 1 Then とすれば、コンパイルされ、実行対象となります。0→1、1→0と切り替えて、デバッグすると便利です。
●サンプル●
#If 0 Then	' ← #If の後を0にすると無効、1にすると有効
    ' 現時点のレコードをテキストファイルに出力(デバッグ用)
    DoCmd.TransferText acExportDelim, , "q_CSV1", "c:\dump1.txt", False
    DoCmd.TransferText acExportDelim, , "q_CSV2", "c:\dump2.txt", False
    DoCmd.TransferText acExportDelim, , "q_CSV3", "c:\dump3.txt", False
    DoCmd.TransferText acExportDelim, , "q_CSV4", "c:\dump4.txt", False
    DoCmd.TransferText acExportDelim, , "q_CSV5", "c:\dump5.txt", False
#End If