DoCmd.TransferDatabase メソッド (Access)
TransferDatabase メソッドによって、Visual Basic で "TransferDatabase/データベース変換" アクションを実行します。
構文
expression.TransferDatabase (TransferType, DatabaseType, DatabaseName, ObjectType, Source, Destination, StructureOnly, StoreLogin)
expression: DoCmd オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
TransferType | 省略可能 | AcDataTransferType | 変換の種類を指定します。 |
DatabaseType | Optional | Variant | データベースの種類のいずれかの名前の文字列式。データのインポート、エクスポート、またはリンクに使用できます。 DatabaseType パラメーターは、データのエクスポートおよびリンク アクションに必要ですが、インポート アクションには必要ありません。 型またはデータベースは次のとおりです。
|
DatabaseName | Optional | Variant | データをインポート、エクスポート、またはリンクするために使用するデータベースの、パス (WSS、Windows SharePoint Services の場合は URL) を含む完全な名前の文字列式。 |
ObjectType | 省略可能 | AcObjectType | インポートまたはエクスポートするオブジェクトの種類。 |
Source | Optional | Variant | データをインポート、エクスポート、またはリンクするオブジェクトの名前の文字列式。 |
宛先 | 省略可能 | Variant | 対象のデータベース内のインポート、エクスポート、またはリンクされるオブジェクトの名前の文字列式。 |
StructureOnly | Optional | Variant | データベース テーブルの構造のみをインポートまたはエクスポートするには、True (1) を使用します。 テーブルの構造とデータをインポートまたはエクスポートするには、False (0) を使います。 この引数を空白にすると、既定値 (False) と見なされます。 |
StoreLogin | Optional | Variant | ODBC データベースへのサインイン識別コード (ID) とパスワードを、データベースからリンクされるテーブルの接続文字列に格納するには、True を使用します。 これを行う場合は、テーブルを開くたびにサインインする必要はありません。 サインイン ID とパスワードを格納しない場合は False を使用します。 この引数を空白にすると、既定値 (False) と見なされます。 この引数は Visual Basic でのみ利用できます。 |
解説
TransferDatabase アクションを使用して、現在の Microsoft Access データベースまたは Access プロジェクト (.adp) と、他のデータベースとの間でデータをインポートまたはエクスポートします。 Access データベースでは、他のデータベースから現在のデータベースにテーブルをリンクすることもできます。 リンク テーブルを使用すれば、テーブル自体は他のデータベースにある状態で、そのテーブルのデータにアクセスすることができます。
Access と他の種類のデータベース間でテーブルをインポートおよびエクスポートすることができます。 Access の選択クエリを他の種類のデータベースにエクスポートすることもできます。 Access では、テーブル形式でクエリの結果セットがエクスポートされます。 対象のデータベースが両方とも Access データベースである場合は、Access データベース オブジェクトのインポートとエクスポートが可能です。
他の Access のデータベースから、そのデータベース内でリンクされているテーブルをインポートした場合は、インポート後もリンクが維持されます。 つまり、テーブル自体ではなく、リンクがインポートされることになります。
ODBC データベースの管理者は引数 SaveLoginId で提供される機能を無効にすることができます。この機能を無効にした場合、すべてのユーザーは、ODBC データベースに接続するたびにサインイン ID とパスワードを入力する必要があります。
注:
ActiveX データ オブジェクト (ADO) を使ってリンクを作成するには、Recordset オブジェクトの ActiveConnection プロパティを使います。
例
次の例では、Access の Northwind.accdb データベースの月間売上高報告書を、現在のデータベースの企業売上レポートにインポートします。
DoCmd.TransferDatabase acImport, "Microsoft Access", _
"C:\Users\Public\Northwind.accdb", acReport, "Monthly Sales Report", _
"Corporate Sales Report"
次の例では、ODBC データベースの [Authors] テーブルを現在のデータベースにリンクします。
DoCmd.TransferDatabase acLink, "ODBC Database", _
"ODBC;DSN=DataSource1;UID=User2;PWD=www;LANGUAGE=us_english;" & _
"DATABASE=pubs", acTable, "Authors", "dboAuthors"
次の例では、SharePoint のリストを現在のデータベースのテーブルにインポートします。
DoCmd.TransferDatabase acImport, "WSS", _
"WSS;DATABASE=https://company-my.sharepoint.com/personal/username_domain_com/express;" & _
"LIST=NameOfListToImport;RetrieveIds=Yes", _
acTable, , "NameOfLocalTable", False
次の例では、現在のデータベースのテーブルを SharePoint のリストにエクスポートします。
DoCmd.TransferDatabase acExport, "WSS", _
"https://company-my.sharepoint.com/personal/username_domain_com/express", _
acTable, "NameOfLocalTable", "NameOfListInSharePoint", False
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。