我有一个org文件,描述了一个项目:
* task1
** task1-1
:PROPERTIES:
:price: 10
:given: <2012-11-08 Thu>
:END:
** task1-2
:PROPERTIES:
:price: 11
:given: <2012-11-08 Thu>
:END:
* task2
** task2-1
:PROPERTIES:
:price: 20
:given: <2012-11-08 Thu>
:END:
** task2-2
:PROPERTIES:
:price: 21
:given: <2012-11-08 Thu>
:END:
我使用org-collector来生成总计表:
#+BEGIN: propview :id global :conds ((not (= price 0))) :cols (ITEM price)
| ITEM | price |
|-----------+-------|
| "task1-1" | 10 |
| "task1-2" | 11 |
| "task2-1" | 20 |
| "task2-2" | 21 |
|-----------+-------|
| | 62 |
#+TBLFM: @6$2=vsum(@2$2..@5$2)
#+END:
但我希望有这样的事情:
| ITEM | price |
|-----------+-------|
| "task1-1" | 10 |
| "task1-2" | 11 |
| "task2-1" | 20 |
| "task2-2" | 21 |
|-----------+-------|
| Total | 62 |
怎么做?
答案 0 :(得分:5)
对于“总计”行,您可以添加一行|Total| |
,在空单元格中按 Cu Cc = (为其定义公式),然后输入公式{ {1}}。 (如果你想重新计算,那就是 C-u C-c C-c 。)
我不知道org-collector,所以无法帮助你解决这个问题。在整个文档上运行它(vsum(@1$2..@4$2)
正在工作吗?),或者将所有内容向右移动一级,以便它可以在一棵树内。
答案 1 :(得分:0)
我今天早上才知道这个。您正在寻找的Org-Collector答案很简单。只需将表公式放在属性视图开始下方的两行空白处,并且在对属性视图进行评估(使用C-c C-c
时将自动计算该公式。)
#+BEGIN: propview :scope tree :cols (ITEM CLOCKSUM EFFORT) :match "TODO=\"TODO\"" :noquote ALL
#+TBLFM: @>$1=Totals::@>$2=vsum(@I..@II);t::@>$3=vsum(@I..@II);t
#+END:
如果要将其转换为通用yasnippet,则需要转义$和\:
#+BEGIN: propview :scope tree :cols (ITEM CLOCKSUM EFFORT) :match "TODO=\\"TODO\\"" :noquote ALL
#+TBLFM: @>\$1=Totals::@>\$2=vsum(@I..@II);t::@>\$3=vsum(@I..@II);t
#+END:
现在,您可以添加一个通用属性视图,该视图计算到目前为止的时间,项目每个步骤的剩余工作量以及总时间。