Thanks for your quick response.
The macro ShowRow() is meant to show or hide a row based on a logic calculation. In the spreadsheet that I included earlier, I am trying to hide rows in a division demonstration problem that do not provide any useful information to the reader or which might confuse the reader.
I based the ShowRow() macro on an earlier forum topic:
viewtopic.php?f=20&t=79218 which was aimed at hiding columns instead of rows. But, the idea is the same.
I tried placing the ShowRow() macro in a cell on the row that would be shown or hidden by the macro, per your implied suggestion. There didn't seem to be any change in behavior.
I heard your suggestion regarding the Listener. I'll investigate that technique as well.
I am attaching another spreadsheet where this macro does work. (Be sure that AutoCalculate is off, before pressing <F9>. Otherwise OpenOfice Calc gets stuck in endless calculations, despite the apparent lack of circular references.) Note: There are two similar macros: ShowRow() and ShownRow(). ShownRow() merely goes around a problem that ShowRow() is experiencing. But, that's another issue.
This issue is: Why does isVisible crash on the earlier posted spreadsheet and not this one? If I am using the isVisible property incorrectly or applying it inappropriately then I would appreciate clarification on that point, particularly since it seems to work in this last spreadsheet.
I'm not sure I understand your statement, "Functions will not change the properties of cells other than the cell they are in." since rows have alterable properties including the isVisible property, which necessarily affects more than one cell. Are you suggesting that this should have been done by a Subroutine instead of a Function?