C#, C♯, C#相談室 Part53at TECH
C#, C♯, C#相談室 Part53 - 暇つぶし2ch913:デフォルトの名無しさん
09/08/20 11:56:20

質問ですが、遅延バインディングにてExcelの単一セルの中に入っている情報を取り出すにはどうすればよいでしょうか?
遅延バインディング レイトバインディング 実行時バインディング いろんな呼び方がありますね。

URLリンク(www6.atwiki.jp) にありましたコードの一部を参照させていただいております。

// セルデータを2次元配列にいっぺんに読み込みます。
objRange_Late = objSheet_Late.GetType().InvokeMember("UsedRange", BindingFlags.GetProperty, null, objSheet_Late, null);
Object[,] tmpTable;
tmpTable = (System.Object[,])(objRange_Late.GetType().InvokeMember("Value", BindingFlags.GetProperty, null, objRange_Late, null));

↑上記コードはうまくいったのですが、
単一のセルを指定し(Rangeを使うのだと思います)そのセル内のデータを取得する方法がわかりません。

やりたいこと 例)
A1セル「hoge」 の文字列hogeを取得したいです。

試しに書いたコード(実行時にエラーが出たのでできませんでしたが)を乗せておきます。

parameters = new Object[] { "A1",Missing.Value };
objRange_Late = objSheet_Late.GetType().InvokeMember("Range", BindingFlags.GetProperty, null, objSheet_Late, parameters);
Object tmpTable = new object[1];
tmpTable = (System.Object[,])(objRange_Late.GetType().InvokeMember("Value", BindingFlags.GetProperty, null, objRange_Late, null));

こういう雰囲気でいけそうな気がするのですが、わかりません。よろしくお願いします。



次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch