Apps :: spreadsheet subtotals



I am looking to insert subtotals into a table of values. On other spreadsheets, I'd use the tool called "sub-totals." As near as I can tell, SIAG doesn't have any such tool. Am I right? (Or is it there, just under a different name?)

Assuming it doesn't, what other options do I have? The Open Office DSL says it needs 384MB of ram, and my laptop has 32! (Which is a shame as OpenOffice's subtotal blows Micorsoft's out of the water.)

Are there decent instructions on how to use SIAG? I went to the SIAG home page, and their instructions left me even more clueless. I think I can build my own subtotal routine, but I would need a decent tutorial on how to create a scheme routine, since I don't know that language and SIAG's examples are largely uncommented.

Thanks,
David

David,

Let's say you wanted to sum "B6 through B13".  You would type the following:

r_sum(B6..B13)

This should help you out.

Greg

SIAG uses pretty much the same commands, functions, etc as every spreadsheet ever created.

Even the routines I used to use Lotus123 with work fine.

Hunt for a generic spreadsheet manual, if you really need it.

-J.P.

I'm talking about the subtotal tool that takes a list, finds all row with the same key value, then inserts a subtotal command below that group to show the sum or count or average or whatever. Yes, you can manually do that, but if you have thousands of rows, that becomes tedious.

So the function I would need to create, assuming it doesn't already exist, would have to sort the table, then examine each line to see if the key value has changed, inserting a row when necessary.

Preferable would be to use another spreadsheet program that already includes such functionality. Open Office is out because it is too big. Is there another spreadsheet that would do what I want to do?

Thanks,
David

dbickin, I found the Online Siag Docs very helpful.  Is the function you are looking for countif:

countif(A:1..B:7,"=10")

Counts all of the cells that contain 10.  You can also look for ranges like < or >.

I also found siag difficult to use and non-intuitive.  It's good points are it's free and it's small.

EDIT:

It also uses scheme (similar to lisp) as it's macro language.  I like lisp a lot (autocad) but getting any clues how to use siag was very frustrating to me.  I was eventually able to find that typing a ( character opens up a dialog where you can write scheme code.  Even the basic scheme commands like set-data and get-point were undocumented.  Once you get past that, I think that the scheme lets you accomplish many very wild things.  You could do what you want to by running the sort command, and then looping through every line and seeing if it changed from the line above it.  If it did, you could use the (insert-line) command to insert a line and the countif command to get a count of those values.

The best I could do was create a text file in beaver called test.scm which I loaded using the (load "test.scm") command.  I was able to define a function to do things, but I wasn't able to get the where loop to increment.  My frustration at the poor documentation finally made me give up.  Something like:
Code Sample
(define (tt)
  (while (not (null? (href -1)))
     (next-line)
  )
)

fails but this works to find blank lines:

Code Sample
(define (tt)
  (if (not (null? (href -1)))
     (next-line)
  )
)


Why, I have no idea.  Is it a bug?  A feature?  Poor documentation really detracts from what feels like it could be a great little spreadsheat.

If anyone has a siag cheatsheet, I'd be very interested.

Next Page...
original here.