列インデックスを指定してOLEDBを使用してExcelファイルを読み取る必要があります。 例として、列A、B、C、AA、BCなどの赤いデータが必要です(Excelの列インデックス)C#列単位でExcelファイルを読み取るインデックス
Idoはどうしたらいいですか?
ありがとうございます。
列インデックスを指定してOLEDBを使用してExcelファイルを読み取る必要があります。 例として、列A、B、C、AA、BCなどの赤いデータが必要です(Excelの列インデックス)C#列単位でExcelファイルを読み取るインデックス
Idoはどうしたらいいですか?
ありがとうございます。
SELECT A,B,C,AA,BC FROM Sheet1$
のようなクエリを試しましたか? Extended Properties="Excel 12.0;HDR=YES
をOLEDB接続文字列に入れてください。最初の行をヘッダーとして扱うのに役立ちます。
まず、A、B、C、AA ...を1,2,3,27、...に変換する少しの関数を書いてください。 次に、番号付きのインデックスを使用して列を探します。このビットを行うのに役立つオンラインの例がたくさんあるはずです。
Thanushka、
私は、このシナリオでは大きな効果をExcel 2007ののOpenXML SDK(DocumentFormat.OpenXml
)を使用しました。これは基本的にはExcelドキュメントをオブジェクトに変換し、他のLINQオブジェクトと同様にC#でクエリを実行できるLINQライブラリです。マイクロソフトは実際にこのトピックに関するかなり良い「馬鹿のガイド」を持っています。あなたはここで良いのリソースを見つけることができます:
http://msdn.microsoft.com/en-us/library/dd920313%28v=office.12%29.aspx
http://blogs.msdn.com/b/johnrdurant/archive/2010/02/19/excel-open-xml-linq-part-i.aspx
http://www.briankeating.net/blog/post/2010/04/26/Linq-to-Xlsx.aspx
あなたはLINQを使用している場合、それは非常に簡単だんと間違いなく私はこのタイプのとなるだろう唯一の方法です仕事。私にとっては、他のオブジェクトがアプリケーションで使用される方法に似たプラクティスを使用する方がはるかに直感的です。このLINQアプローチは、それがあなたのバッグであればうまくいきます。
HI動作しませんでした。私は問題が "Excel 12.0"にあると思う。私のプログラムでは「Excel 8.0」です。とにかくそれも、それは働かなかった – Thanushka