橘猫橘猫 发表于 2021-3-28 22:01:05

求助一个python-docx的问题

将excel中某一个单元格的内容写入word中的一个样表

但是完成后显示:



内容不是左对齐的{:10_243:}

想要达成如下的效果:



试过单元格对其方式中的两端对齐了,搞定不了

求大佬解答{:10_281:}

qq1151985918 发表于 2021-3-29 10:44:23

本帖最后由 qq1151985918 于 2021-3-29 10:47 编辑

这不是左对齐么,两端对齐当然不行咯,你把代码发来看一下先

橘猫橘猫 发表于 2021-3-29 19:10:31

qq1151985918 发表于 2021-3-29 10:44
这不是左对齐么,两端对齐当然不行咯,你把代码发来看一下先

代码如下:
from docx import Document
import openpyxl

#打开excel文件
filename = "文件.xlsx"
wb = openpyxl.load_workbook(filename=filename)
ws = wb.active
#1.创建date列表
date_list = []
for row in ws.iter_rows(min_row=2,min_col=6,max_col=6):
    for cell in row:
      #判断 日期是否在date列表中&cell是否为空,如不在date列表中,则将其添加到date列表
      if cell.value not in date_list and cell.value is not None:
            date_list.append(cell.value)
      else:
            continue
print(date_list)
#2.根据date列表,依次获取某一天的内容
for date in date_list:
    #content汇总
    content = ""
    #获取当天的内容
    for each_row in ws.iter_rows(min_row=2,min_col=2,max_col=9):
      if each_row.value == date:
            str1 = each_row.value.replace("\n\n","\n").replace("_x000D_","") + "\n" + "(" + each_row.value + ")" + "\n"
            content += str1
    #3.将当天的content写入word中,并保存
    doc = Document("模板.docx")
    tables = doc.tables
    tables.cell(2,1).text = content
    doc_name = date + ".docx"
    doc.save(doc_name)

可是我看word上关于单元格的操作就叫两端对齐,没有左对齐的格式

qq1151985918 发表于 2021-3-30 09:02:44

橘猫橘猫 发表于 2021-3-29 19:10
代码如下:




你把你模板的对其方式改了就好了呗,肯定有左对齐的,没有就右键 --段落那里有对其

设置对齐方式前要 Ctrl + A 全选再设置

橘猫橘猫 发表于 2021-3-30 18:51:17

qq1151985918 发表于 2021-3-30 09:02
你把你模板的对其方式改了就好了呗,肯定有左对齐的,没有就右键 --段落那里有对其

设置对齐方式 ...

我知道在word里怎么操作让内容左对齐,但用代码要怎么实现单元格内的左对齐{:10_243:}
页: [1]
查看完整版本: 求助一个python-docx的问题