# Grist and Calculator Like functions

I know that Grist can do sums and more advanced excel like formulas. But how feasible is it to use Grist as a calculator and are there any unique characteristics that we need to be aware of?

For example: I’d like to have a table(s) that are solely dedicated to calculating project fees, costs, and retail pricing. Like for a website design or marketing project.

Ideally I’d like to be able to navigate to that table(s), with my costs and other relevant info already plugged in, update a few cells and have my cost, pricing, and profit, already calculated and ready to go. Similar to a regular spreadsheet.

Extra credit if I can share the page with my sales people so that they can also use it for quotes, and being able to print it to pdf would also be great kind of like the invoicing template.

1 Like

Grist can do any kind of calculations. It sounds like the main challenge would be to figure out all the parameters, like costs, fees, taxes, etc., to decide which tables they go to, and then you can create cells to do the calculations.

Here is an example: https://docs.getgrist.com/doc/new~jVCxX33Kc9sqzQZNK8HSXr/p/3#a1.s4.r1.c13. Select the project of interest using the arrows above the top widget, and you’ll see the associated costs in the linked table, and the calculations in the card. Hit “Enter” in any calculation cell to see how it’s actually computed.

One practical suggestion I’ll share is this. In examples like this one, many calculations are all happening within a single record (e.g. the record representing one project). A Card view may be a convenient representation of these fields – you can choose which fields to show, how to lay them out, etc. But when creating the calculations, I prefer to work in a Table view when all these calculation cells are in a single row. It’s not as convenient a view, but it’s much easier to add or rename columns, which matters when you are first creating a set of calculations.

Hope this helps!

2 Likes

I think this is EXACTLY what I was looking for! @dmitry-grist Thank you. A very simple and elegant solution. I was about to make a mess.

You can certainly calculate whatever you want and have plenty of tables and complex formulas. For the most part I’m not sure what the question is asking. Is there anything you can imagine doing in Excel or Google Sheets that you’re not sure you can do with Grist?

When sharing with other people, it might get tricky depending on what you’re doing. If everyone is doing their own invoices, quotes etc. then it’s fine. Each person can add their own record to the table, and so even if everyone is editing the same table at the same time they won’t interfere with each other. Multiple people can even edit different parts of the same record at the same time.

But ultimately a single cell can only have a single value at a time which is the same for everyone. Whatever changes you make are shared in real time with everyone. Which is usually good, unless someone else wants to set different values on the same cells at the same time. For example, if you’re trying to make some budget decisions and you want to experiment with some hypothetical questions like increasing everyone’s salary based on a global parameter to see how that affects overall annual costs, that might clash with someone else’s similar experiments. Even if they aren’t experimenting with salaries, they might be looking into more expensive equipment which still affects the annual cost calculation. If two people need to run similar simulations at the same time, either one of them needs to duplicate the document, or the document may need to be restructured to support it.

Do you imagine needing to do something like the latter scenario?

@alexmojaki I think it would be more of the 1st scenario. In our case it would be one person at a time in most scenarios.

Now this is unrelated but I assumed it was possible to import .grist files into new documents. Is that correct? I attempted to import @dmitry-grist’s table but I’m getting an “Import failed: File format is not supported” error.