Bang Notation and Dot Notation in VBA and MS-Access

Despite the (formerly) accepted answer to this question, the bang is not in fact a member or collection access operator. It does one simple and specific thing: The bang operator provides late-bound access to the default member of an object, by passing the literal name following the bang operator as a string argument to that default member.

That’s it. The object doesn’t have to be a collection. It doesn’t have to have a method or property called Item. All it needs is a Property Get or Function which can accept a string as the first argument.

For much more detail and proof, see my blog post discussing this: The Bang! (Exclamation Operator) in VBA

Leave a Comment