Determine if a Row is Visible in a Macro

Using LibreOffice Basic, how can I tell if a given row number on a given sheet in a Calc workbook is visible? I know the sheet name and the row/column of the data of interest. But for the life of me, I can’t find a method or a property that will tell me if the row or cell has been hidden (either manually or by a filter.)

There are three ways to make a row "invisible:

  1. Hide it. The respective properti value then is theRow.IsVisible = False
  2. Set the heigth to such a small value that the row isn’t visible any more: .theRow.Height<=11
  3. Define a filter and use it in a way that a row is filtered out: .theRow.IsFiltered = True

Concerning the second way: Factually you cannot set the row height to 0. The minimum seems to be 11 (meaning 0.11 mm). I didn’t search for a respective specification.

Concerning the third way: If a row is filtered (out), its prperty .IsVisible is alo set to False automatically. The relevant difference lies in the way formulas the treat filtered rows.
(I personally rarely use filters.)

Pardon me for being obtuse, but what kind of an Object is theRow? As noted, I know the sheet name, the row number and the column number of a specific cell, but how do I turn those parameters into theRow Object in order to obtain its IsVisible property?

OK, I understand now.

theRow = Sheet.Rows.getByIndex(rowNbr)
vis = thisRow.IsVisible

Thanks for the help. I knew it was obvious. I just had a mental block trying to obtain the Row Object.

Yes. Sorry! I didn’t think of making this clear.
In addition: A SheetCellRange object also has a property .Rows from which you can get a row based on its 0-based index relative to the row range spanned by the cell range.
myCellRange.Rows(0) is a complete row of the sheet, but the topmost one only relativ to the range. (In the respective way you get columns.)
Since a single cell also can be treated as a range with myCell.Rows.Count = 1, you get the only row by myCell.Rows(0)