首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >邮件合并vb.net

邮件合并vb.net
EN

Stack Overflow用户
提问于 2022-06-06 07:23:12
回答 1查看 154关注 0票数 1

我正在使用邮件合并功能,以合并数据从excel表格到文字字母。我使用以下连接和命令。

代码语言:javascript
复制
Sub WriteInWord()
    Dim WdApp As Object
    Dim WdDoc As Object
    result = Path.GetFileName(TextBox1.Text)
    Dim BatchNumber = Mid(result, 18, 5)

    WdApp = CreateObject("Word.Application")
    WdDoc = CreateObject("Word.Document")

    WdDoc = WdApp.Documents.Open(TextBox2.Text, ConfirmConversions:=
    False, ReadOnly:=False, AddToRecentFiles:=False, PasswordDocument:="",
    PasswordTemplate:="", Revert:=False, WritePasswordDocument:="",
    WritePasswordTemplate:="", XMLTransform:="")

    WdDoc.MailMerge.OpenDataSource(Name:=TextBox1.Text,
    ConfirmConversions:=False, ReadOnly:=False, LinkToSource:=True,
    AddToRecentFiles:=False, PasswordDocument:="", PasswordTemplate:="",
    WritePasswordDocument:="", WritePasswordTemplate:="", Revert:=False, Connection:=
    "Provider=Microsoft.ACE.OLEDB.12.0;User ID=Admin; Mode=Read; Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database=""""; Jet OLEDB:Registry Path="""";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0; Jet OLEDB:Global", SQLStatement:="SELECT * FROM `Sheet1$`", SQLStatement1:="")

    ' .Destination  0 = DOCUMENT, 1 = PRINTER
    WdApp.ActiveDocument.MailMerge.Destination = 0 'wdSendToNewDocument
    WdApp.ActiveDocument.MailMerge.SuppressBlankLines = True
    With WdApp.ActiveDocument.MailMerge.DataSource
        .FirstRecord = 1     'wdDefaultFirstRecord
        .LastRecord = -16  'wdDefaultLastRecord
    End With
    WdApp.ActiveDocument.MailMerge.Execute(Pause:=False)

    WdDoc.Close(savechanges:=False) 'Close the original mail-merge template file.
    Dim outputFilename As String = Path.ChangeExtension(inputFilePath + "\" + BatchNumber + ".docx", "pdf")
    Dim fileFormat As Object = WdSaveFormat.wdFormatPDF
    WdApp.ActiveDocument.SaveAs(outputFilename, fileFormat)
    WdApp.Quit()
    WdDoc = Nothing
    WdApp = Nothing
    MsgBox("FINISHED WITH MERGE")
End Sub

excel值如下 下面是从excel到word的合并值

正如您所看到的,excel到word的值已经发生了变化。我怎么才能解决这个问题?谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-06-07 07:32:11

谢谢你的灵感。

我知道我的问题在哪里。我将SQL语句更改为

代码语言:javascript
复制
SQLStatement:="SELECT * FROM `Sheet1$`"

代码语言:javascript
复制
SQLStatement:="SELECT * FROM `SheetName$`"

"SheetName“是excel工作表的名称,因为我的电子表格有一个名称。

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

https://stackoverflow.com/questions/72514323

复制
相关文章

相似问题

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