MailMerge.OpenDataSource メソッド (Word)
データ ファイルを指定された文書に添付します。メイン文書が作成されていない場合は、この文書がメイン文書になります。
構文
式。 OpenDataSource
( _Name_
, _Format_
, _ConfirmConversions_
, _ReadOnly_
, _LinkToSource_
, _AddToRecentFiles_
, _PasswordDocument_
, _PasswordTemplate_
, _Revert_
, _WritePasswordDocument_
, _WritePasswordTemplate_
, _Connection_
, _SQLStatement_
, _SQLStatement1_
, _OpenExclusive_
, _SubType_
)
式 が必要です。 'MailMerge' オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
名前 | 必須 | 文字列型 (String) | データ ファイルの名前を指定します。 データ ファイル、接続文字列、およびクエリ文字列を指定する代わりに、Microsoft Query (.qry) ファイルを指定できます。 |
Format | オプション | バリアント型 (Variant) | ファイル コンバーターは、ドキュメントを開くために使用します。 使用できる定数は、WdOpenFormat 定数のいずれかです。 外部ファイル形式を指定するには、FileConverter オブジェクトと一緒に OpenFormat プロパティを使用して、この引数で使用する値を決定します。 |
ConfirmConversions | 省略可能 | バリアント型 (Variant) | True を設定すると、ファイルが Microsoft Word 形式ではない場合に、[ ファイルの変換] ダイアログ ボックスを表示します。 |
ReadOnly | 省略可能 | Variant (バリアント型) | True を設定すると、データ ソースを読み取り専用で開きます。 |
LinkToSource | 省略可能 | バリアント型 (Variant) | True を設定すると、メイン文書が開かれるたびに、Connection と SQLStatement によって指定されたクエリを実行します。 |
AddToRecentFiles | 省略可能 | バリアント型 (Variant) | True を設定すると、[ ファイル] メニューの最下部の最近使用したファイルの一覧にファイル名を追加します。 |
PasswordDocument | 省略可能 | バリアント型 (Variant) | データ ファイルを開くときに使用するパスワードを指定します。 下記の「備考」を参照してください。 |
PasswordTemplate | 省略可能 | バリアント型 (Variant) | テンプレートを開くときに使用するパスワードを指定します。 下記の「備考」を参照してください。 |
Revert | 省略可能 | バリアント型 (Variant) | 名が開いているドキュメントのファイル名である場合の動作を制御します。 True を指定 すると、開いているドキュメントに対する未保存の変更が破棄され、ファイルが再度開きます。 False を指定 すると、開いているドキュメントがアクティブになります。 |
WritePasswordDocument | 省略可能 | バリアント型 (Variant) | 文書に対する変更を保存するときに使用するパスワードを指定します。 下記の「備考」を参照してください。 |
WritePasswordTemplate | 省略可能 | バリアント型 (Variant) | テンプレートに対する変更を保存するときに使用するパスワードを指定します。 下記の「備考」を参照してください。 |
Connection | 省略可能 | バリアント型 (Variant) | 実行される SQLStatement によって指定されたクエリ内の範囲です。 (注釈を参照してください)。 |
SQLStatement | 省略可能 | バリアント型 (Variant) | データ検索のクエリ オプションを定義します。 下記の「備考」を参照してください。 |
SQLStatement1 | 省略可能 | バリアント型 (Variant) | クエリ文字列が 225 文字より長い場合、SQLStatement は文字列の最初の部分を指定し、SQLStatement1 は 2 番目の部分を指定します。 (注釈を参照してください)。 |
OpenExclusive | 省略可能 | バリアント型 (Variant) | True を設定すると、排他的に開きます。 |
SubType | 省略可能 | バリアント型 | 指定できる定数は、WdMergeSubType 定数のいずれかです。 |
注釈
ODBC 接続とクエリ文字列を決定するには、手動でクエリ オプションを設定し、QueryString プロパティを指定して接続文字列を返します。 次の表には、一般的に使用される SQL キーワードが記載されています。
キーワード | 説明 |
---|---|
DSN | ODBC データ ソースの名前 |
UID | ユーザー ログオン ID |
PWD | ユーザーが指定したパスワード |
DBQ | データベース ファイル名 |
FIL | ファイルの種類 |
以前のバージョンの Word (Microsoft Office Access および Microsoft Office Excel データ ソース用の動的データ交換 (DDE)) と同じ接続方法を使用するように Word に指示するには、 を使用 SubType:=wdMergeSubTypeWord2000
します。
範囲の指定方法はデータの取得方法によって異なります。 たとえば、次のようになります。
Open Database Connectivity (ODBC) でデータを取得する場合は、接続文字列を指定します。
動的データ交換 (DDE) を使用して Excel のデータを検索する場合は、範囲名を指定します。
Access のデータを検索する場合は、文字列 "Table" または "Query" の後にテーブルまたはクエリの名前を指定します。
重要
アプリケーションではハードコードされたパスワードを使用しないでください。 プロシージャ内でパスワードが必要な場合、ユーザーからのパスワードを要求し、変数に格納して、コードでその変数を使用します。 これを行う方法の推奨されるベスト プラクティスについては、「 Office ソリューション開発者向けのセキュリティ ノート」を参照してください。
例
次の使用例は、新規のメイン文書を作成し、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 という名前の Excel ワークシートを添付します。 引数 Connection は "売上" という名前の範囲からデータを取得します。
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" という名前の 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
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。
フィードバック
https://aka.ms/ContentUserFeedback」を参照してください。
以下は間もなく提供いたします。2024 年を通じて、コンテンツのフィードバック メカニズムとして GitHub の issue を段階的に廃止し、新しいフィードバック システムに置き換えます。 詳細については、「フィードバックの送信と表示