This variable type can't be passed by value

Object variables must be passed by reference.  For example, if the argument of a procedure named Sub1 is defined to be of the control data type, that is, Sub1 (A as Control), then  Sub1 Command1  is allowed, but Sub1 (Command1) is not.  Putting parentheses around an argument causes it to be passed by value.