Tato skupina příkazů umožňuje řízení překladu makra podle nadefinovaných slov:
{#DEFINE Test}
{#IFDEF Test}
..A
{#IFDEF Test_1}
..C
..C
..C
{#ENDDEF}
..A
{#ELSEDEF}
..B
..B
{#ENDDEF}
V uvedeném příkladě nebude blok "B" a "C" přeložen. Přitom platí, že v těchto tzv "vyloučených blocích" je potřeba korektně zapisovat další potřebné direktivy překladu. Jinými slovy: počet příkazů {#IFDEF}, {#IFNDEF} a {#ENDDEF} se musí rovnat i ve vyloučených blocích! Příkazy podmíněného překladu se zapisují do složených závorek.
| {#DEFINE} | zavedení řídícího slova |
| {#UNDEF} | zrušení řídícího slova |
| {#IFDEF} | podmínka větvení programu |
| {#IFNDEF} | podmínka větvení programu |
| {#ELSEDEF} | doplněk k větvení programu |
| {#ENDDEF} | ukončení podmínky překladu |
V různých konfiguracích programu jsou předdefinovány různá slova řídicí překlad:
| MSDOS | prostředí MSDOS (Pam4) |
| WINDOWS | prostředí Windows (Pam5) |
| CP852 | kódová stránka Latin II 852 (Pam4) |
| VPRGxxxxx | verze programu bez rozšíření (př.:VPRG_7.1203) (Pam4) |
| VMACxxxxx | verze makrojazyka bez rozšíření (př.:VMAC_8.0214) (Pam4) |
| FILER | lokální databáze BT-Filer (Pam4) |
| BTRIEVE | síťová databáze Btrieve (Pam4) |
| CS | český překlad (Pam4) |
| SL | slovenský překlad (Pam4) |