What's the advantage to the method you propose for finding the last column and row as opposed to something more like
# Assuming all variables declared in a "my" statement above.
# Also assuming $worksheet is pointing to a WorkSheet object.
$last_cell = $worksheet->Range("A1")->EntireColumn->
($last_col, $last_row) = $last_cell =~ /\$(\w+)\$(\d+)/;
(Note that the last cell returned by this method does not depend on the Range("A1") specified -- it still returns the last cell properly. For example, N23 (as text $N$23) if N23 were the last cell in the sheet.)