InsertDatabase Method

Retrieves data from a data source (for example, a separate Microsoft Word document, a Microsoft Excel worksheet, or a Microsoft Access database) and inserts the data as a table in place of the specified range.

expression**.InsertDatabase(Format**, Style, LinkToSource, Connection, SQLStatement, SQLStatement1, PasswordDocument, PasswordTemplate, WritePasswordDocument, WritePasswordTemplate, DataSource, From, To, IncludeFields)

expression Required. An expression that returns a Range object.

Format    Optional Variant. A format listed in the Formats box in the Table AutoFormat dialog box (Table menu). Can be any of the WdTableFormat constants. A border is applied to the cells in the table by default.

Style    Optional Variant. The attributes of the AutoFormat specified by Format that are applied to the table. Use the sum of any combination of the following values:

Value Meaning
0 (zero) None
1 Borders
2 Shading
4 Font
8 Color
16 Auto Fit
32 Heading Rows
64 Last Row
128 First Column
256 Last Column

LinkToSource    Optional Variant. True to establish a link between the new table and the data source.

Connection    Optional Variant. A range within which to perform the query specified by SQLStatement. How you specify the range depends on how data is retrieved. For example:

  • When retrieving data through Open Database Connectivity (ODBC), you specify a connection string.

  • When retrieving data from Microsoft Excel by using dynamic data exchange (DDE), you specify a named range or "Entire Spreadsheet."

    Security  Dynamic data exchange (DDE) is an older technology that is not secure. If possible, use a more secure alternative to DDE, such as object linking and embedding (OLE).

  • When retrieving data from Microsoft Access, you specify the word "Table" or "Query" followed by the name of a table or query.

SQLStatement    Optional String. An optional query string that retrieves a subset of the data in a primary data source to be inserted into the document.

SQLStatement1    Optional String. If the query string is longer than 255 characters, SQLStatement denotes the first portion of the string and SQLStatement1 denotes the second portion.

PasswordDocument    Optional Variant. The password (if any) required to open the data source. (See Remarks below.)

PasswordTemplate    Optional Variant. If the data source is a Word document, this argument is the password (if any) required to open the attached template. (See Remarks below.)

WritePasswordDocument    Optional Variant. The password required to save changes to the document. (See Remarks below.)

WritePasswordTemplate    Optional Variant. The password required to save changes to the template. (See Remarks below.)

DataSource    Optional Variant. The path and file name of the data source.

From    Optional Variant. The number of the first data record in the range of records to be inserted.

To    Optional Variant. The number of the last data record in the range of records to be inserted.

IncludeFields    Optional Variant. True to include field names from the data source in the first row of the new table.


Security   Avoid using hard-coded passwords in your applications. If a password is required in a procedure, request the password from the user, store it in a variable, and then use the variable in your code. For recommended best practices on how to do this, see Security Notes for Microsoft Office Solution Developers.

Security  Avoid using the built-in system administrator (sa) logon account. Instead, make system administrators members of the sysadmin fixed server role, and have them use their own accounts to log on. Use sa only when there is no other way to log on. To prevent unauthorized access through the sa logon account, you should assign that account a strong, unique password.

Security  When possible, use Windows Authentication (also referred to as a trusted connection), which uses a Windows user account to connect to SQL Server. When a user connects through a Windows user account, SQL Server uses information in the Windows operating system to validate the account name and password. Before you can use Windows Authentication, a server administrator must configure SQL Server to use this mode of authentication. If Windows Authentication is not available, avoid saving users' logon information. It is more secure for users to enter their logon information each time they log on.


This example inserts a Microsoft Excel spreadsheet named "Data.xls" after the selection. The Style value (191) is a combination of the numbers 1, 2, 4, 8, 16, 32, and 128.

With Selection
    .Collapse Direction:=wdCollapseEnd
    .Range.InsertDatabase _
        Format:=wdTableFormatSimple2, Style:=191, _
        LinkToSource:=False, Connection:="Entire Spreadsheet", _
End With

Applies to | Range Object

See Also | Add Method | CreateDataSource Method | InsertFile Method | Using DAO from Microsoft Word