emacs - 在 Emacs org-table-mode 中使用命名字段来确定 vsum 的范围,不可能吗?

标签 emacs org-mode org-table

我一直在尝试通过添加命名字段来简化我拥有的半复杂表,没有出现任何问题,直到我使用 vsum 运算符。我将公式设置为 $M=vsum($3..@-4) ,该公式有效,但是我必须不断地在这些字段中添加和删除项目,这会更改列编号。这导致我必须在每次更新/更改后更改 vsum 范围的字段规范。因此,我尝试命名顶部字段和底部字段,并考虑将命名变量提供给 vsum,给我一个类似于以下内容的表:

| / | <>     | <>      |
|---+--------+---------|
|   | Title1 | Title 2 |
|---+--------+---------|
| _ |        | START   |
|   | name   | 1000    |
|   | name   | 3456    |
|   | name   | 123     |
| ^ |        | END     |
|---+--------+---------|
| _ |        | MT      |
| # | Total  | #ERROR  |
| # |        |         |
|---+--------+---------|
#+TBLFM: $MT=vsum($START..$END)

这是上表的调试公式输出: 配方替代历史 原始:vsum($START..$END) $xyz->vsum((1000)..(123)) @r$c->vsum((1000)..(123)) $1-> vsum((1000)..(123)) -----------^ 错误:应为“)”

我尝试过将命名字段变量包含在括号中,以及其他几种方法,但到目前为止还无法使其发挥作用。我希望我只是错过了一些东西并且盲目了,但也许这是不可能做到的?

我也尝试过求和功能,但没有成功。预先感谢您的帮助。

最佳答案

以下解决方案通过使用 @II@III 来引用第二行和第三行之间的所有条目。

| / | <>     | <>      |
|---+--------+---------|
|   | Title1 | Title 2 |
|---+--------+---------|
|   | name   | 1000    |
|   | name   | 3456    |
|   | name   | 123     |
|---+--------+---------|
| _ |        | MT      |
| # | Total  | 4579    |
| # |        |         |
|---+--------+---------|
#+TBLFM: $MT=vsum(@II..@III)

文档:http://orgmode.org/manual/References.html#References

关于emacs - 在 Emacs org-table-mode 中使用命名字段来确定 vsum 的范围,不可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13744544/

相关文章:

debugging - 查看/拦截所有 emacs lisp 函数调用

Emacs:以 shell 脚本模式执行代码

emacs - 突出显示第一个不匹配的括号

html - 如何在 Emacs 的组织模式下在源 block 的 "#+ATTR_HTML"预览输出周围添加 "#+RESULTS"?

emacs - 在 emacs 中重构一个大文件

emacs - 如何在 Org-mode 中为自定义 beamer 类定义部分?

emacs - orgmode 日志抽屉总时间未按预期计算

emacs - 包含所有项目的时钟表,并在组织模式下进行工作量估计

emacs - 单元格的 Orgmode 表格格式

datetime - 在组织模式表中计算工期