我此刻很難過(guò).基于
Can I use Win32 COM to replace text inside a word document?,我能夠編寫一個(gè)簡(jiǎn)單的模板系統(tǒng),該模板系統(tǒng)可以從模板word doc(Python中)生成word文檔.
我的問(wèn)題是“文本字段”中的文字找不到那種方式.即使在Word本身也無(wú)法搜索所有內(nèi)容 – 您實(shí)際上必須在“主文檔”和“文本字段”之間進(jìn)行選擇.作為Windows世界的新手,我嘗試瀏覽VBA文檔,但沒(méi)有找到任何幫助(可能是由于“文本字段”是一個(gè)非常常見的術(shù)語(yǔ)).
word.Documents.Open(f)
wdFindContinue = 1
wdReplaceAll = 2
find_str = '\{\{(*)\}\}'
find = word.Selection.Find
find.Execute(find_str, False, False, True, False, False, \
True, wdFindContinue, False, False, False)
while find.Found:
t = word.Selection.Text.__str__()
r = process_placeholder(t, answer_data, question_data)
if type(r) == dict:
errors.append(r)
else:
find.Execute(t, False, True, False, False, False, \
True, False, False, r, wdReplaceAll)
這是我的代碼的相關(guān)部分.我現(xiàn)在能夠解決所有問(wèn)題(提示:如果你想用超過(guò)256個(gè)字符替換字符串,你必須通過(guò)剪貼板等來(lái)完成…)
聯(lián)系客服