是否有一种方法,可以将code block输出的table通过org table的公式直接导入到对应的矩形区域呢?

比如当我们有一个输出table的code block:

#+name: data-table
#+begin_src emacs-lisp :results table
'((1 2 3)
  (23 4 5)
  (345 55 2)
  (34 33 6))
#+end_src

并且还有一个已经设计好的空表格(出于某种原因,需要先设计这个表格的样式):

| C1 | C2 | C3 |
|    |    |    |
|    |    |    |
|    |    |    |
|    |    |    |

然后,如果想要将code block的输出直接导入(通过公式的方式或者其他,已经存在那个空表格应该是一个org的table)到上面设计好的表格区域@2$1…@5$3(这个例子比较简单直接用code block得到这样的一个表格可能更简单 :thinking:),大佬们知道有可能的实现的方法吗?还是说我的思路错了呢?

最终期望的结果像这样:

| C1  | C2   | C3 |
| 1   |  2   |  3 |
| 23  |  4   |  5 |
| 345 |  55  |  2 |
| 34  |  33  |  6 |
(setq my/head "\n| C1 | C2 | C3 |\n")

(setq my/table '((1 2 3)
		 (23 4 5)
		 (345 55 2)
		 (34 33 6)))

(defun my/org-create-table-from-list (plist)
  (when (string-match "\\S-" (buffer-substring (point-at-bol) (point-at-eol)))
    (end-of-line 1)
    (newline))
  (insert my/head)
  (let ((col (current-column))
	(name (plist-get plist :name)))
    (while plist
      (if (eq (car plist) :name)
	  (setq plist (cddr plist))
	(while plist
	  (let ((lcol (car plist)))
	    (while lcol
	      (insert " | ")
	      (insert (number-to-string (car lcol)))
	      (setq lcol (cdr lcol))))
	  (insert " \n ")
	  (setq plist (cdr plist))))))
  (beginning-of-line -2)
  (org-table-align))

(my/org-create-table-from-list my/table)

|  C1 | C2 | C3 |
|   1 |  2 |  3 |
|  23 |  4 |  5 |
| 345 | 55 |  2 |
|  34 | 33 |  6 |

感谢!

想知道的是,这个方案 my/head 可以是一个org的表格吗?

我的本义是想通过公式的方式去做这个工作(类似于:#+TBLFM: @2$1…@5$3=‘(my/org-create-table-from-list ##the_result_of_code_block##) 这样的操作)。