• ベストアンサー

ExcelのRange指定を、DataSetに一括で読込み

ExcelのRange指定を、DataSetに一括で読込み方法ってありますか? cellsを使って、ループで回すのはあまりに汚いので回避したいです。 Range(A2:D5)の値を、そのまま4列×4行で持ってきて展開したいといったことは簡単に出来るのでしょうか? よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

>「RangeからDataSetに一括で取り込めるような命令」 >1、2行で書けるような、こんな命令ってありますでしょうか? ありません。

takashi_it
質問者

補足

やっぱりないですか! 探しても見つからないはずです。 ありがとうございます。

その他の回答 (1)

回答No.1

対象の言語バージョンが書かれていませんが、VB 2005(というか .NET 系の VB)として書かせてもらいます。 DataSet(ならびに DataTable)を使いたい理由としては質問に書かれているように 「cellsを使って、ループで回すのはあまりに汚いので回避したい」 だけでしょうか? 読み込んだ後の使い方として DataSet が必要、ってことはありませんか? たとえば DataGrid などにバインドするとか、さらに Excel を更新するとか。 Excel のブックをデータベースに見立てて ADO.NET を使って DataSet に読み込むのであればいくつかサンプルがあります。 探せばもっと見つかるでしょう。 http://support.microsoft.com/kb/306572/ja DataSet が重要なのではなく、Excel のデータを少ないコード量で扱いたいのであれば、「DataSet もどき」のクラスを自作するとか。 DataSet もどきオブジェクトが Excel のデータを読み込む部分のコードは「それなり」になりますが、DataSet もどきオブジェクトを利用する側のコードはすっきりします。

takashi_it
質問者

補足

回答ありがとうございます。 >VB 2005(というか .NET 系の VB) になります。 色々と別回答いただきましたが、それらで出来るのはわかっていました。 というより、それで実装しようと思っていたのですが、それよりも、まず、 「RangeからDataSetに一括で取り込めるような命令」が知りたかったわけです。 1、2行で書けるような、こんな命令ってありますでしょうか?

関連するQ&A