2012-03-08 16 views
0

私の同僚、Accessの達人は、MS AccessからExcelスプレッドシートにリンクし、約2分で必要なデータを取得するためのクエリを書いて、数分ですばらしいカスタムレポートを作成する方法を実演しました。彼のSQLへのマイナーな変更以外に、コーディングなしでこれをどれくらい迅速に実行できるかに感心しました。MS Accessでは、Visual Studio 2010でも実行できますか?

Visual Studio 2010には、外部データソース(この例ではExcelスプレッドシートなど)をポイントしてすぐに処理できるこの機能がありますか? VS2010で新しいC#winformプログラムを開始しました。データセットの新しいデータソースを「何らかの形で」追加してExcelスプレッドシートにポイントできるというアイデアを使って、データセットデザイナーを介して空のデータセットを追加しました。しかし、私の人生のために、私は簡単な方法( "Add Data Source .."オプションを使用するとき)を見ることができません。私はさまざまな接続文字列、異なるプロバイダを試しましたが、デザイナーにExcelスプレッドシートのデータを見せることはできません。

私は、私がコードについて話していることを正確に行うことができますが、これを行うための「視覚的」な方法があることを期待していました。 Accessのようなものがあります。 Excelのスプレッドシートをポイントして、データソースとしてインポートするか、リンクしてください。

誰でもこれをやっている経験がありますか?これは、スプレッドシートに書き戻すのではなく、データを取り出すためのものです。私は、デザイナーをスプレッドシートに向けて「ここでは、これをデータソースとして使用する」と言う方法を探しています。

答えて

1

できます。 Sort of ...これは、Excel 2003(.xls)スプレッドシートへの接続を視覚的に追加するために行った作業です。

  1. [データベースエクスプローラ]タブで、[データ接続]を右クリックして[接続を追加]を実行できます。
  2. パスを入力し、 『Microsoft Jet 4.0 OLE DBプロバイダ』
  3. を選択し、 『追加接続』ダイアログでデータプロバイダ
  4. で「OLE DB用データプロバイダの.NET Frameworkの」データソースとで「その他」を選択「拡張プロパティ」の「サーバーまたはファイル名」
  5. クリックして「詳細」と書きエクセル8.0でExcelファイルへ

完了は、ExcelやLINQクエリを構築(または任意の他への接続が必要です)をデザイナーに表示します。

+0

それは私が探していたものです。それはAccessにあるほど簡単ではありませんが、まだ簡単です。本当にありがとう! – Kevin

0

確かに、私見here

OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c://Org.xls;Extended Properties=" + (char)34 + "Excel 8.0;HDR=Yes;" + (char)34); 
DataSet myExcelData=new DataSet(); 
conn.Open(); 
OleDbDataAdapter myDataAdapter = new OleDbDataAdapter("Select * from [Sheet1$]", conn); 
myDataAdapter.Fill(myExcelData); 
ultraGrid1.DataSource = myExcelData; 
conn.Close(); 

を投稿しかし、なぜあなたは、Excelからのデータは、「それで仕事」にアクセスしてもらうのでしょうか? Excelを使って作業することは理にかなっているようです。

+0

はい、私は上記のコードでこれを行うことができます。私はちょうど私の友人がAccessで行ったように "視覚的に"それを行う方法を探していた。つまり、スプレッドシートにリンクしただけで、SQL文とVoilaで入力するのは信じられないほど迅速でした。私は、VS2010が同じ機能を持っているかどうか疑問に思っていました。 – Kevin

+0

ああ、ユーザーがExcelスプレッドシートからデータを抽出し、必要な他のデータをデータベーステーブルから取得するプログラムを作成するよう依頼したため、この議論が行われました。私はこのプログラムを書いたが、スプレッドシートに接続する方法を理解するのは少し苦労した。私はAccessバディに、自分がやろうとしていることを話しました。それはAccessでかなり早くそれをやり遂げる方法を実演したときです。 – Kevin

関連する問題