A slightly more long winded route is to make two gviz calls to the sheet.
The first query to return the number of rows, then the second query can use this to return the data in the last row
First query:
SELECT COUNT(A) ## assumes there is something in every row in A...
will return a count of all the rows, including the header row, you can do this with a WHERE clause as well to return the number of rows that meet a condition
Second query: (let us assume the output of the first query = 100)
SELECT * OFFSET 99 ## deduct 1 to start querying at 99th item
Again you can use the WHERE clause to define conditions
Unfortunately, the gviz syntax in the select statement does not appear to allow nesting of select statements - I could find not evidence of others doing so (even some of the mighty on StackOverflow...)