Вопрос

the $1 column of my table is just an i++ value, 1, 2, 3 ... n where n is the number of rows between the 2nd and 3rd hline. is there a function I can call to tell me how many rows are in that part of my table, or, if I want to be able to refer to a variable which is the number of rows in my table, do I have to keep track of it manually like this? so what I want to be able to do is the following, without having to use a count up column.

@7$1 = Total(5), where "5" is the number of rows between the 2nd and 3rd hline

| num rows | x | y |
|----------+---+---|
|        1 |   |   |
|        2 |   |   |
|        3 |   |   |
|        4 |   |   |
|        5 |   |   |
|----------+---+---|
| Total(5) |   |   |
|----------+---+---|
#+TBLFM: @7$1=Total(@-1) 

So this is what I have now, I would like to be able to get the number of rows between 2 hlines without having to use a dedicated column to keep that count.

Это было полезно?

Решение

Two variants come to mind, one using Calc's vector length function vlen, the other using elisp's length, which gives the size of a list:

| Item          |
|---------------|
| tomato        |
| banana        |
| space shuttle |
| orgmode       |
|---------------|
| 4             |
| 4             |
#+TBLFM: @6$1='(length '(@I..@II))::@7$1=vlen(@I..@II)

@I..@II means all rows between the first and second hlines.

Другие советы

I you put your cursor on the last row and do C-c ? Emacs will show you the information that you need. E.g. line @162, col $2, ref @162$2 or B162.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top