Things should be done like Jack's example if the subprogram has to handle arrays like that. Cannot assume 0 or 1 or any other value as the lowest subscript, just like trying to decide the upper subscript for a given program using the same subprogram.
There are too many programs I've seen that assume only zeroth subscript, to then use REDIM _PRESERVE on it, but even so, a subprogram should always consult with LBOUND() and UBOUND() for the limits.
There are too many programs I've seen that assume only zeroth subscript, to then use REDIM _PRESERVE on it, but even so, a subprogram should always consult with LBOUND() and UBOUND() for the limits.