簡體   English   中英

使用C#進行郵件合並(Excel到Word)

[英]Mail Merge (Excel to Word) using C#

我想知道是否有人知道如何使用Excel文件作為數據源來進行郵件合並,以填充Word模板上的字段? 如果可以的話,我希望使用Word的互操作...但是在為此找到代碼時遇到了一些困難。 有人對此有任何語法嗎? 先感謝您。

學習如何在MS Word中自動執行特定操作的一種非常有用的方法是在啟用“記錄宏”的情況下手動實際執行操作。

一旦有了VBA宏,就很容易將其轉換為使用互操作的VB.NET或C#。 我傾向於先在Word中手動調整VBA,以便在使用互操作層轉換為.NET語言之前先進行測試。

我對mailmerge不太了解,但這是我錄制宏時生成的一些VBA:

ActiveDocument.MailMerge.MainDocumentType = wdFormLetters
ActiveDocument.MailMerge.OpenDataSource Name:= _
    "c:\Arrays.xlsx", ConfirmConversions:=False, _
     ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, _
    PasswordDocument:="", PasswordTemplate:="", WritePasswordDocument:="", _
    WritePasswordTemplate:="", Revert:=False, Format:=wdOpenFormatAuto, _
    Connection:= _
    "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin;Data Source=c:\Arrays.xlsx;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=37;Jet OLEDB:Database Loc" _
    , SQLStatement:="SELECT * FROM `Sheet1$`", SQLStatement1:="", SubType:= _
    wdMergeSubTypeAccess

我沒有在此處包含完整的代碼,但是希望這可以給您一些想法。

Word(至少在我正在查看的2007版本中)可以做到這一點。 只需選擇Excel文件作為數據源。 您想在代碼中做什么?

我使用第三方控件。 您可以將xls文件讀入數據表,然后告訴控件將其合並。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM