总监:编辑Word表

时间:2018-06-19 11:55:38

标签: officer

使用“官员”,我正在尝试编辑Word表的值。 很直接地找到包含它的“段落”

library(officer)

doc = read_docx('template.docx')
doc = cursor_begin(doc)
doc = cursor_reach(doc,"Some text")
print(doc)

然后我得到一个看起来像这样的文档

* Content at cursor location:
 row_id is_header cell_id                    text col_span row_span
1.1       1     FALSE       1                   D            1        1
1.5       2     FALSE       1                                1        1
1.9       3     FALSE       1             Some text          1        1
1.13      4     FALSE       1                                1        1
2.2       1     FALSE       2            More text           1        1

但是,那又如何呢?似乎没有任何方法可以直接更改此表的内容...

1 个答案:

答案 0 :(得分:0)

您可以将body_replace_all_text用于该任务。

library(officer)


doc <- read_docx()
doc <- body_add_table(doc, iris, style = "table_template")

doc = cursor_reach(doc, "setosa")
doc <- body_replace_all_text(doc, old_value = "setosa", 
  new_value = "coco", only_at_cursor = TRUE)
print(doc, target = "test.docx")