Ma dipende a cosa fai riferimento... Non è che basta vedere parentesi e punto esclamativo e diventa la regola...
Il primo parametro è la condizione, se la condizione si riferisce ad un Oggetto il puntoesclamativo le quadre possono esserci o meno a seconda di dove si trova e di che riferimento...
Hanno 2 significati diversi
Il puntoesclamativo definisce il rapporto gerarchico tra oggetto e oggetto contenitore mentre le quadre come ti ho già detto sono una sintassi precauzionale.
IIF(Me.Visible=True, "Visibile","Nascosta")
Questa sintassi può essere scritta anche così:
IIF(Forms!NomeForm.Visible=True, "Visibile","Nascosta")
Oppure
IIF(Forms![NomeForm].Visible=True, "Visibile","Nascosta")
Ecc...