LibreOffice is open source software (free, to boot) which competes with Microsoft Office. Of course, Microsoft Office (and in particular its spreadsheet, Excel) are these days available as free web-based applications (registration is required).
For me, there are advantages in having a (free) pc resident spreadsheet and hence I use Calc.
The one problem I have encountered is that Calc (unlike Excel) does not do self-referencing with cells. In short it means that it cannot do a calculation like x=x+1 where the value of a cell is taken, increased by a value and the new value then returned to the same cell. This means that the convenience of having running totals automatically updated when new values are entered elsewhere, has to be foregone.
Writing macros to do this, for a dunce like myself, is rather formidable and I have been struggling with the problem for a long time. The link now provides the basis for writing such macro.
I have read some acerbic comments on why this should not be done in a spreadsheet, but for my humble purposes it is most convenient.
See also this later post of mine which gives a more complete solution.