Others have answered your specific question, but I'd like to make a comment on your code.
You're doing things like
$Doc->{Comments}
$c->{Scope}{Text}
and
$c->{Range}{Text}
While this may work, it's not good style, and isn't guaranteed to work as you expect.
Better to call the accessor methods, rather than violate the data abstraction model;
i.e.:
$Doc->Comments
$c->Scope->Text
and
$c->Range->Text
You only need the curly braces when assigning to the like-named properties, e.g.
$Word->{Visible} = 1;