This would be a feature suggestion (although, afair, it has been suggested in the past, you can try
Search to make sure) because it seems that the ! prefix was designed this way. Help file:
You can use the ! prefix in front of variables and identifiers in an if-then-else statement to negate a value. The following statements are equivalent.It doesn't say anything about using this prefix with expressions inside brackets, it's only meant to work with identifiers/variables.