つまづいてます。助けてください。

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
なつ

つまづいてます。助けてください。

#1

投稿記事 by なつ » 15年前

こんにちは。

またまた、お世話になります。
今回は、C#でエクセルのセルに画像を入力しようとしてます。

既存のソースに下記を加えたのですが、「objectにWorkbooksの定義がありません」っていうエラーが帰ってきます。下記を、単体でしたときはできていたのですが・・・。
よろしくお願いします。

Excel.Range range;
Excel.Shapes shapes;
Excel.Shape shape;

//ES_Appli = new Excel.Application();
ES_WBook = E_Appli.Workbooks.Open(saveFile, Type.Missing, Type.Missing, Type.Missing
  , Type.Missing, Type.Missing, Type.Missing
  , Type.Missing, Type.Missing, Type.Missing
 , Type.Missing, Type.Missing, Type.Missing);
E_Sheet = (Excel.Worksheet)ES_WBook.ActiveSheet;
range = E_Sheet.get_Range("A1", Type.Missing);

shapes = E_Sheet.Shapes;
shape = shapes.AddPicture(@"パス", Office.MsoTriState.msoFalse,                                Office.MsoTriState.msoTrue, 420, 0, 85, 15);

YuO

Re:つまづいてます。助けてください。

#2

投稿記事 by YuO » 15年前

E_Appliの定義はどうなっていますか。
おそらく,そこが
Excel.Application E_Appli;
のようになっていないのだと思います。
# E_Appli.Workbooks.Openはやってはいけません (前回:http://www.play21.jp/board/formz.cgi?re ... 25&id=dixq参照)

なつ

Re:つまづいてます。助けてください。

#3

投稿記事 by なつ » 15年前

返答ありがとうございます。

>E_Appliの定義はどうなっていますか。 おそらく,そこが
>Excel.Application E_Appli;のようになっていないのだと思います

Excel.Application E_Appliってなってないです。ただ、メンバー変数で「private object E_Appli」ってなってます。
エクセルの操作ソースの中をいじってるんですが、「Excel.Application」の定義がまったくなくってわからないんです。
新しく定義すると画面が固まっちゃってます・・・。

YuO

Re:つまづいてます。助けてください。

#4

投稿記事 by YuO » 15年前

> Excel.Application E_Appliってなってないです。ただ、メンバー変数で「private object E_Appli」ってなってます。

なぜExcel.Application型 (Excel 2010だとMicrosoft.Office.Interop.Excel.Application型) ではなくobject型で定義しているのですか。
PIA (or 非推奨だがIA) を使わないのであれば,C#の場合は頑張ってリフレクションでディスパッチしていくしかないはずです。
C# 4.0ならdynamicがありますが……。
# PIA: プライマリ相互運用アセンブリ (Primary Interop Assembly), IA: 相互運用アセンブリ (Interop Assembly)

なつ

Re:つまづいてます。助けてください。

#5

投稿記事 by なつ » 15年前

返信、遅くなってすみません。
なぜ、object型なのかは分らないですが、他にもやりかたがあるようなので考えてみます。

閉鎖

“C言語何でも質問掲示板” へ戻る