QA@IT
この質問・回答は、@ITの旧掲示板からインポートされたものです。

C# Excel操作

お世話になっております。

現在C#にてExcelの読み書きを行うツールを作成しております。
MSDN等を利用してwebにて情報を集めつつ作成しておりますが、調査の仕方が悪いのか、目的の情報をすぐに見つけることができません。C#でのEXCEL操作について詳しい情報が記載された書籍ありましたら、ご紹介いただけますでしょうか。

質問者:hdylw

回答

100人近くのかたが閲覧されているのですが
レスが無いようなので。。

書物やサイトに関しても”C#からのExcel操作”と限定してしまうと、
ニーズが少ないのでなかなか世の中にはないと思います。

C#でもVB.NETでも.NET以前のVBでも基本は同じで、
・Excelのオブジェクト
・ブックオブジェクト
・ワークシートオブジェクト
の3つを操作する側(C#側など)でインスタンス化すれば後は
そのインスタンス内部のメソッドとプロパティ・イベントハンドリングを使用するというのは、
C#に限定される話ではありません。

MSDNを見たということは、この辺まではできているということでしょうか?

http://support.microsoft.com/default.aspx?scid=kb;ja;302084

読み込み書き込み程度ならこれを参考にして、
各オブジェクトのメソッド・プロパティ・イベントを調べれば可能だと思いますけど?
操作側(C#など)からの操作が複雑だと思うならば、
Excelに隠れたTextBoxでも貼り付けて、ファイルパスを操作側から書き込み、
そのチェンジイベントをExcelのマクロにやらせるなどの方法もあります。
この場合、C#の本ではなくて、
”EXCLEマクロ入門”とか””EXCEL関数入門”とかのOffice系の本でできると思います。

お悩みの程度がわかりにくいので
このような返信しかできませんが、
ご参考ください。

投稿者:xxななおxx

編集 履歴 (0)

C#でのEXCEL操作について詳しい情報が記載された書籍ありましたら、ご紹介いただけますでしょうか。
Visual C# .NET 基礎300の技にExcelを操作する方法が少しですが載っています。

投稿者:Hasumi

編集 履歴 (0)

hdylwさんの書き込み (2005-01-26 16:57) より:

お世話になっております。

現在C#にてExcelの読み書きを行うツールを作成しております。

MSDN等を利用してwebにて情報を集めつつ作成しておりますが、調査の仕方が悪いのか、目的の情報をすぐに見つけることができません。C#でのEXCEL操作について詳しい情報が記載された書籍ありましたら、ご紹介いただけますでしょうか。
googleで「C# Excel」をキーワードに検索しただけでもいくつかひっかかりませんか。

http://www.microsoft.com/japan/msdn/howto/howtoVCSharp.asp
MSのHOWTOの一覧ですがいくつかEXCELに関するものもあります。

おそらくxxななおxxさんが紹介してくれているようにEXCELオートメーションを
利用するかOLEDBデータプロバイダを使うかになると思います。

投稿者:べる

編集 履歴 (0)

 探し方が悪いんでしょうね。ここで既出ですもの。
 一覧に戻って「スレッドディレクトリ」を探検するとか、MSのサポート技術情報で「C# excel」で検索するとか。
 下の『www』のリンクから私のウェブページへいって、「マイクロソフトサポート技術情報へのリンク集」の中にも若干。

 あと、検索したらなどういうところをどういうキーワードで検索したか書きましょう。何も考えずに「C# excel」と書きましたが、すでにそれで検索していたら、この情報って無駄ですよね。無駄な情報が欲しいですか?


投稿者:Jitta

編集 履歴 (0)

皆様、情報ありがとうございます。

自分が何をどこまで探したかを記述せずに質問のみしてしまった点お詫びします。

MSDNを見たということは、この辺まではできているということでしょうか?

http://support.microsoft.com/default.aspx?scid=kb;ja;302084
googleで「C# Excel」をキーワードに検索しただけでもいくつかひっかかりませんか。

http://www.microsoft.com/japan/msdn/howto/howtoVCSharp.asp

MSのHOWTOの一覧ですがいくつかEXCELに関するものもあります。
Visual C# .NET 基礎300の技にExcelを操作する方法が少しですが載っています。

ご紹介いただいたページ、書籍について参照した上で質問させていただきました。
webだと以下ページ
http://dobon.net/
http://homepage3.nifty.com/midori_no_bike/CS/index.html
書籍では「Visual C#.NET逆引き大全 500の極意」や「C#入門」のようなタイトルの書籍も参考にしました。

今回特に知りたい部分は書式設定の部分になります。

Excel.Style style;

として、インスタンスのプロパティを見ると Font, HorizontialAliment などいろいろあり、それぞれ何を表すのかはほぼ理解できるですが、値として何(HorizontialAliment の場合は Excel.XlHAlign.*** など)を設定すればよいのかがわからなかったため、それを解説した書籍がないものかと質問させていただきました。

投稿者:hdylw

編集 履歴 (0)

値として何(HorizontialAliment の場合は Excel.XlHAlign.*** など)を設定すればよいのかがわからなかったため、それを解説した書籍がないものかと質問させていただきました。
HorizontalAlignment プロパティの場合は
HorizontalAlignment プロパティを見ると設定できる値がわかります。

ExcelのマクロとVBAのヘルプをみれば大体の見当はつくかと思います。

URLを間違えていたのを修正
[ メッセージ編集済み 編集者: Hasumi 編集日時 2005-01-28 11:26 ]
[ メッセージ編集済み 編集者: Hasumi 編集日時 2005-01-28 11:29 ]

投稿者:Hasumi

編集 履歴 (0)

C#からEXCLEを操作していることで、
C#に固執しすぎていませんか?

C#とEXCLEの各オブジェクトとのリンクや
C#単体の問題では無いと解釈できますので、
C#とは切り離して、
EXCELマクロ・VBAといった書物や
そのキーワードを含めた検索を行う方が
問題解決が早いと思います。

MSDNでも"Hasumiさん"のとうな探し方をしたほうが、
参考になるものは出てきます。

投稿者:xxななおxx

編集 履歴 (0)

ども、ぼのぼのです。

>C#からEXCLEを操作していることで、
>C#に固執しすぎていませんか?

これに関連するかもしれませんが、EXCELファイルを操作するために、必ずしもMicrosoft Excelを使用する必要もありません。例えばこれとか。他にも探せば見つかると思います。

投稿者:ぼのぼの

編集 履歴 (0)

Hasumiさんより教えていただいたページにて目的の情報を発見することができました。
皆様ご指摘の通り、C#に固執しすぎていたようです。

Hasumiさん、皆様、ありがとうございました。

投稿者:hdylw

編集 履歴 (0)
ウォッチ

この質問への回答やコメントをメールでお知らせします。