首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用docxtpl生成多using表

使用docxtpl生成多using表
EN

Stack Overflow用户
提问于 2020-01-20 00:59:06
回答 1查看 764关注 0票数 1

我有一系列数据(在二维列表‘CombinedTable’中),我需要用它来填充MS Word模板中的表。该表有7列,因此我尝试使用docxtpl模块进行以下操作:

代码语言:javascript
复制
context = {
    'tpl_modules1': CombinedTable[0]
    'tpl_modules2': CombinedTable[2]
    'tpl_modules3': CombinedTable[4]
    'tpl_modules4': CombinedTable[6]
    'tpl_modules5': CombinedTable[8]
    'tpl_modules6': CombinedTable[10]
    'tpl_modules7': CombinedTable[12]
}
tpl.render(context)

tpl.save(FilePath + FileName)

这不是我所知道的最优雅的解决方案,但我只是想让它发挥作用--不幸的是,使用以下模板的代码将tpl_modules7数据写入所有列,而不仅仅是第7列。

有人对如何解决这个问题有建议吗?我试图在列和行之间创建一个for循环,但是没有成功地将任何东西写入文档(保存为空白&空文档)。

CombinedTable变量是一个由12个列表组成的列表(模板中每个列都有一个列表,尽管只有7个包含数据)。这12个列表中的每一个都包含另一个包含单元格数据的列表,其长度等于要写入该列中的表的行数。这意味着写入的行数因每一列而异。

编辑:更仔细地查看文档,它声明我不能在同一行中多次使用%tr。然后,我想我将不得不通过%tc%tr使用一个循环(我尝试过了&无法工作)。对于如何实现这一点,有什么建议吗?尤其是在单词文档的那一边。谢谢!

EN

回答 1

Stack Overflow用户

发布于 2020-01-20 22:38:04

我能够令人满意地解决我的要求,但我的解决方案可能不适合所有。我只需在一个文档中设置7个不同的表,其中包含7列和调整后的边距/边框,以满足表所需的尺寸。在我的问题中,7个表的docxtpl语法与图像相同,它们之间的小缓冲区列被word文档中的列替换。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59815824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档