Microsoft SQL Server から Microsoft Excel にデータをインポートする方法

重要: このサポート技術情報 (以下「KB」) は、翻訳者による翻訳の代わりに、マイクロソフト機械翻訳システムによって翻訳されたものです。マイクロソフトは、お客様に、マイクロソフトが提供している全ての KB を日本語でご利用いただけるように、翻訳者による翻訳 KB に加え機械翻訳 KB も提供しています。しかしながら、機械翻訳の品質は翻訳者による翻訳ほど十分ではありません。誤訳や、文法、言葉使い、その他、たとえば日本語を母国語としない方が日本語を話すときに間違えるようなミスを含んでいる可能性があります。マイクロソフトは、機械翻訳の品質、及び KB の内容の誤訳やお客様が KB を利用されたことによって生じた直接または間接的な問題や損害については、いかなる責任も負わないものとします。マイクロソフトは、機械翻訳システムの改善を継続的に行っています。

英語版 KB:306125
概要
このステップ バイ ステップ ガイドでは、Microsoft SQL Server に含まれているサンプル データベース Pubs データベースから Microsoft Excel にデータをインポートする方法について説明します。

ActiveX データ オブジェクト (ADO) は、任意の種類のデータ ソースへのアクセスを提供します。それは、フラットのオブジェクト モデルにいくつかのオブジェクトです。メイン オブジェクト、ADO オブジェクト モデルには、次のとおりです。
   Object          Description   -----------------------------------------------------------------------   Connection      Refers to the connection to the data source.   Recordset       Refers to the data extracted.   Command         Refers to a stored procedure or SQL statements that                    need to be executed.				
ADO を使用してレコード セットを返すには、多くの方法がありますが、この資料では、接続と Recordset オブジェクトに集中します。

要件

Microsoft SQL Server を実行して、Pubs データベースを含むローカル サーバーが必要な場合。

次の知識があることをお勧めします。
  • Office プログラムの手順は、Visual Basic for Applications を作成しています。
  • オブジェクト変数を使用します。
  • Excel のオブジェクトを操作します。
  • リレーショナル データベース管理システム (RDBMS) の概念です。
  • 構造化照会言語 (SQL) の SELECT ステートメント。

ADO のオブジェクト ライブラリを参照します。

  1. Excel を起動します。新しいブックを開くし、SQLExtract.xls として保存します。
  2. Visual Basic エディターを起動し、VBA プロジェクトを選択します。
  3. で、 ツール メニューをクリックして 参照.
  4. 最新のバージョンを選択する] をクリックします、。 Microsoft ActiveX のデータ ・ オブジェクト ・ ライブラリ チェック ボックス。

接続を作成します。

  1. 新しいモジュールをブロジェクトに挿入します。
  2. DataExtract と呼ばれる新しい Sub プロシージャを作成します。
  3. 入力するか、次のコードを貼り付けます。
    ' Create a connection object.Dim cnPubs As ADODB.ConnectionSet cnPubs = New ADODB.Connection' Provide the connection string.Dim strConn As String'Use the SQL Server OLE DB Provider.strConn = "PROVIDER=SQLOLEDB;"'Connect to the Pubs database on the local server.strConn = strConn & "DATA SOURCE=(local);INITIAL CATALOG=pubs;"'Use an integrated login.strConn = strConn & " INTEGRATED SECURITY=sspi;"'Now open the connection.cnPubs.Open strConn					

データを抽出しています。

入力するか、レコードを抽出するには、次のコードを貼り付けます。
' Create a recordset object.Dim rsPubs As ADODB.RecordsetSet rsPubs = New ADODB.RecordsetWith rsPubs	' Assign the Connection object.	.ActiveConnection = cnPubs	' Extract the required records.	.Open "SELECT * FROM Authors"	' Copy the records into cell A1 on Sheet1.	Sheet1.Range("A1").CopyFromRecordset rsPubs		' Tidy up	.CloseEnd WithcnPubs.CloseSet rsPubs = NothingSet cnPubs = Nothing				

コードの動作を確認します。

  1. コードを実行します。
  2. Excel に切り替え、データを表示するには、ブックのシート 1 でを確認します。

トラブルシューティング

ハングしたように、コードを表示し、実行時エラーが表示される場合は、データベース サーバー ダウンしている可能性があります。実行時エラーが返されるまでの時間を制御するのにには、タイムアウト プロパティを使用できます。このプロパティ値には 0 より大きい値に設定します。値を 0 に設定する場合、接続はしないタイムアウトします。既定値は 15 秒です。
関連情報
次のマイクロソフト Web サイトを検索することによってその他のサンプル コードを検索できます。
[acc2002] [xl2002] に対して XL2007

警告: この記事は自動翻訳されています

プロパティ

文書番号:306125 - 最終更新日: 04/19/2012 03:17:00 - リビジョン: 1.0

  • kbhowtomaster kbmt KB306125 KbMtja
フィードバック