Word VBA教程:OpenDataSource方法

将一个数据源附加至某一指定文档,如果没有主文档,则将指定文档转换为主文档。

expression.OpenDataSource(Name, Format, ConfirmConversions, ReadOnly, LinkToSource, AddToRecentFiles, PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate, Connection, SQLStatement, SQLStatement1, OpenExclusive)

expression   必需。该表达式返回一个MailMerge对象。

Name   String 类型,必需。数据源文件名。您可以指定一个 Microsoft Query (.qry) 文件,而不必指定数据源、连接字符串及查询语句。

Format   Variant 类型,可选。打开该文档的文件转换程序。可以是下列WdOpenFormat 常量之一。若要指定一个外部文件格式,请用FileConverter对象的OpenFormat属性来确定用于本参数的值。

WdOpenFormat 可以是下列 WdOpenFormat 常量之一:
wdOpenFormatAllWord
wdOpenFormatAuto 默认值。
wdOpenFormatDocument
wdOpenFormatEncodedText
wdOpenFormatRTF
wdOpenFormatTemplate
wdOpenFormatText
wdOpenFormatUnicodeText
wdOpenFormatWebPages

ConfirmConversions   Variant 类型,可选。如果为 True,则当文件不是 Word 格式时,将显示“转换文件”对话框。

ReadOnly   Variant 类型,可选。如果为 True,可以只读方式打开数据源。

LinkToSource   Variant 类型,可选。如果为 True,则在每次打开主文档时都执行由 Connection 和 SQLStatement 指定的查询操作。

AddToRecentFiles   Variant 类型,可选。如果为 True,则会将文件名添加至“文件”菜单底部的最近使用过的文件列表中。

PasswordDocument   Variant 类型,可选。用于打开数据源的密码。

PasswordTemplate   Variant 类型,可选。用于打开模板的密码。

Revert   Variant 类型,可选。当 Name 是一个打开文档的文件名时,控制相应的操作。如果为 True,则放弃已打开文档中任何没有保存的更改,并重新打开文件;如果为 False,则激活已打开的文档。

WritePasswordDocument   Variant 类型,可选。保存文档修改所需的密码。

WritePasswordTemplate   Variant 类型,可选。保存模板修改所需的密码。

Connection   Variant 类型,可选。一个范围,可在其中执行由 SQLStatement 指定的查询。指定范围的方法取决于检索数据的方法。例如:

SQLStatement   Variant 类型,可选。为检索数据定义查询选项。

SQLStatement1   Variant 类型,可选。如果查询字符串超过 255 个字符,则 SQLStatement 指定字符串的第一部分,SQLStatement1 指定第二部分。

OpenExclusive  Variant 类型,可选。如果为 True,则以独占方式打开。

说明

若要确定 ODBC 连接和查询字符串,可手动设置查询选项,而用QueryString属性可返回连接字符串。下表包含了一些通常使用的 SQL 关键字。

关键字 说明
DSN ODBC 数据源的名称
UID 用户登录 ID
PWD 用户指定的密码
DBQ 数据库文件名
FIL 文件类型

VBA示例

本示例创建一篇新的主文档并附加 Orders 表,该表来自 Microsoft Access 名为“Northwind.mdb”的数据库。


Dim docNew As Document
Set docNew = Documents.Add
With docNew.MailMerge
    .MainDocumentType = wdFormLetters
    .OpenDataSource _
        Name:="C:\Program Files\Microsoft Office" & _
        "\Office\Samples\Northwind.mdb", _
        LinkToSource:=True, AddToRecentFiles:=False, _
        Connection:="TABLE Orders"
End With

本示例创建一篇新的主文档,并附加名为“Names.xls”的 Microsoft Excel 电子表格。Connection参数用以从名为“Sales”的范围中检索数据。


Dim docNew As Document
Set docNew = Documents.Add
With docNew.MailMerge
    .MainDocumentType = wdCatalog
    .OpenDataSource Name:="C:\Documents\Names.xls", _
        ReadOnly:=True, _
        Connection:="Sales"
End With

本示例用 ODBC 将名为“Northwind.mdb”的 Microsoft Access 数据库附加于活动文档。SQLStatement参数用来在 Customers 表中选择数据。


Dim strConnection As String
With ActiveDocument.MailMerge
    .MainDocumentType = wdFormLetters
    strConnection = "DSN=MS Access Databases;" _
        & "DBQ=C:\Northwind.mdb;" _
        & "FIL=RedISAM;"
   .OpenDataSource Name:="C:\NorthWind.mdb", _
        Connection:=strConnection, _
        SQLStatement:="SELECT * FROM Customers"
End With

Word VBA教程

Word VBA参考教程:目录1 Word VBA参考教程:目录2
Word VBA参考教程:目录3 Word VBA参考教程:目录4
Word VBA参考教程:目录5 Word VBA参考教程:目录6
Word VBA参考教程:目录7 Word VBA参考教程:目录8
Word VBA参考教程:目录9 Word VBA参考教程:目录10
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号