使用 Python 邮件合并值而不是公式

Mail Merging Values Instead of Formulas using Python

我正在尝试在具有由公式产生的值的单元格中进行邮件合并。例如,在下面,我有一个日期单元格,它是电子表格中 day/month/year 的串联。通常当我通过 word 进行邮件合并时,它只会合并值。但是,当我使用以下代码执行此操作时,它将合并到实际公式中而不是计算值中。有没有办法让它提取值而不是公式?

我试过 Excel 打开和 Excel 关闭。如果单元格只是键入的文本,它会很好地合并。唯一的问题是公式。

它将合并到 =CONCATENATE(C2, "/", D2, "/", E2)

而不是 1/2/2010
from __future__ import print_function
import os
import openpyxl
from mailmerge import MailMerge
from datetime import date  

os. chdir(r'CURRENT WORKING FOLDER')      

wb = openpyxl.load_workbook('FullMerge.xlsm')
sheet = wb["Database"]
max_col = 104
sheet.delete_rows(sheet.min_row, 1)

template = "FullMerge.docx"
document1 = MailMerge("FullMerge.docx")

Date = str(sheet.cell(row = 1, column = 1).value)
    
document1.merge(
    Date = Date   
    )

document1.write("FinishedMerge.docx")

不是很熟悉这个环境,但是openpyxl确实return公式(如果有的话)。似乎没有两个不同的属性可以让您 return 值或公式,但您可以通过这样做来消除公式:

wb = openpyxl.load_workbook('FullMerge.xlsm',data_only=True)