C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: ADO.NET EXCELのシートを順番通りに取得したい


(過去ログ 84 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■49727 / inTopicNo.1)  ADO.NET EXCELのシートを順番通りに取得したい
  
□投稿者/ KEn (3回)-(2010/05/14(Fri) 11:05:14)

分類:[VB.NET/VB2005 以降] 

【VB2005+Excel2003】

いつもお世話になります。

ADO.NETでEXCELファイルを読み込み、シートの一覧を取得し、最初(EXCEL上一番左端)のシート名を取得したいのですが、
OleDbConnection.GetSchema("Tables") で取得した内容を見ても、Excel上で表示されるシートの並び順になっていません。

シート名は不確定なので、名称ではなく順序で先頭シート名を取得したいのですが、
どのようにすればよろしいでしょうか。

よろしくお願い致します。


【EXCELのシートの並び順】
先頭(左端)から
1:hoge
2:Sheet2
3:Sheet3
4:Sheet1

【得られた結果(datatable)】
0:Sheet1$
1:Sheet2$
2:Sheet3$
3:hoge$
4:hoge$Print_Titles


引用返信 編集キー/
■49730 / inTopicNo.2)  Re[1]: ADO.NET EXCELのシートを順番通りに取得したい
□投稿者/ かたぎり (24回)-(2010/05/14(Fri) 11:34:02)
ADO.Net使わないで、
Excelのオブジェクト生成して、目的のブックを開いた後
ActiveWorkbook.Sheetsを順番に読み込んだら
名前が順番で取れませんでしょうか?

その後、Excelオブジェクトを開放して、
改めてADO.Netでデータ取得してみるとか。

ちょっと面倒ですけど。


引用返信 編集キー/
■49731 / inTopicNo.3)  Re[2]: ADO.NET EXCELのシートを順番通りに取得したい
□投稿者/ KEn (4回)-(2010/05/14(Fri) 11:39:02)
2010/05/14(Fri) 11:40:06 編集(投稿者)

No49730 (かたぎり さん) に返信
> ADO.Net使わないで、
> Excelのオブジェクト生成して、目的のブックを開いた後
> ActiveWorkbook.Sheetsを順番に読み込んだら
> 名前が順番で取れませんでしょうか?
>

確かにとれますね。
ありがとうございます。

ADO.netで無理なら仕方無いんですが、
ですが、シートの順序を取得するためだけに
Excelのオブジェクトを生成するのがちょっと面倒ですね(単なるわがまま)
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -