C#でのEXCELの起動方法に関して

このQ&Aのポイント
  • C#を使用してEXCELファイルにデータを出力する方法について調べています。
  • Visual Studioがインストールされている環境では問題なく出力されますが、他の環境でエラーが発生します。
  • 参照設定でMicrosoft Excel 9.0 Object Libraryを追加しており、設定自体に問題はないと思われますが、EXCEL2000は起動できません。
回答を見る
  • ベストアンサー

C#でのEXCELの起動方法に関して

現在、以下のようなC#を用いた環境でEXCELファイルにデータをOUTPUするような記述をして いますが、Visual Studio がインストールされている環境では問題なく出力されるものの、その他 の環境では下記のようなエラーが表示されてしまいます。 《環境》 Windows XP  VisualStudio 2008 C#  EXCEL 2000 参照設定で、Microsoft Excel 9.0 Object Libraryを追加しており、設定自体に問題はないかとは 思います。 但し、自身で色々調べてみたところ、この方法(参照設定の追加)では、EXCEL2000は起動できない ような。。。 《エラー内容》 アプリケーションのコンポーネントで、ハンドルされていない例外が発生しました。 [続行]をクリックすると、アプリケーションはこのエラーを無視し、続行しようとします。 [終了]をクリックすると、アプリケーションは直ちに終了します。 ファイルまたはアセンブリ 'Interop.Excel, Version=1.3.0.0. Culture=neutral,PublicKey Token=null7 またはその依存関係の1つが読み込めませんでした。 指定されたファイルが見つかりません。 というエラーが表示されてしまいます。 原因がわかるようでしたら教えて頂きたいと思います。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

そういう場合は Dependency Walker を使って調べると良いと思います。 http://www.dependencywalker.com/

関連するQ&A

  • C#でExcelを起動したい

    http://jeanne.wankuma.com/tips/csharp/excel/execute.html を参考に C#コードに // Excel.Application の新しいインスタンスを生成する Excel.Application xlApplication = new Excel.Application(); // Excel を表示する xlApplication.Visible = true; // 1000 ミリ秒 (1秒) 待機する System.Threading.Thread.Sleep(1000); // Excel を終了する xlApplication.Quit(); // COM オブジェクトの参照カウントを解放する (正しくは COM オブジェクトの参照カウントを解放する を参照) System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApplication); を追加したのですが エラー CS0246: 型または名前空間名 'Excel' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が不足しています。 が出てしまいます。 以下の様にしているのですが、何のusingを追加すればよいのでしょうか? using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace testproject { public partial class testproject: Form { public testproject() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { // Excel.Application の新しいインスタンスを生成する Excel.Application xlApplication = new Excel.Application(); // Excel を表示する xlApplication.Visible = true; // 1000 ミリ秒 (1秒) 待機する System.Threading.Thread.Sleep(1000); // Excel を終了する xlApplication.Quit(); // COM オブジェクトの参照カウントを解放する (正しくは COM オブジェクトの参照カウントを解放する を参照) System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApplication); ImageViewer imgViewer = new ImageViewer(); imgViewer.Show();

  • C#からexcelへのデータ出力で困っています

    C#2008で作ったフォーム上のデータをexcelのセルにコピーしてセーブさせるアプリを作りました 開発マシン以外で実行しようとするとエラーが出てコピーできませんでした かなり悩んで調べた結果、必須コンポーネントの設定ができていないのかなぁと思いました (少し似た悩みをかかえてらした方が、必須コンポーネントの設定で解決されたとWebに出ていました。) 必須コンポーネントの設定を見ると、当方の場合「.net 2.0」にだけチェックが入っていました。 excelを使う場合は、これだけでは不十分なのでしょうか? ここまで調べて、能力不足でこの先どうすればいいのか分からなくなりました ご指導いただければ幸いです 【エラーの内容】 'Microsoft.Office.Interop.Excel, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c'、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。 ファイル名 'Microsoft.Office.Interop.Excel, Version=11.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c' です。 【環境】 開発マシン:問題なく動きます OS:Vista C#2008 Proffesional 配布先マシン:上述のエラーが出て動きません OS:XP VB2008はインストールしていません

  • C#でEXCELの起動方法に関して

    C#の初心者です。 初歩的な内容で申し訳ありませんが、教えて下さい。 以下のような環境で、C#を用いてEXCELファイルにデータをOUTPUするような記述をして います。 《環境》  Windows XP  VisualStudio 2008 C#  EXCEL 2000 そもそもVisualStudio 2008で、EXCEL2000は操作できないのでようか??? 操作できるのであれば、どのように参照設定や、コーディングをすれば良いかを教えて 下さい。 よろしくお願いします。

  • Excelの強制終了

    会社でデスクトップPCを使用しているのですが、 ある特定のExcelファイルに編集をかけると 「0x7533bef6の命令が0x000400201のメモリを参照しました。メモリがwrittenになることができませんでした。 アプリケーションを終了するには"ok"をクリックして下さい。アプリケーションをデバッグするには"キャンセル"をクリックして下さい。」 とエラーメッセージがでてしまい、止むを得ず「OK」をクリックし、Excelを終了しています。 会社のヘルプデスクに聞いてもExcelを再インストールして下さい。としか言われません。 何が原因なんでしょうか?他のExcelファイルはなにもエラーは出ないのですが。 ちなみにExcel 97を使用しています。

  • ソフトを起動すると例外エラー

    市販のソフトではないのですが、あるソフトを別のPCからコピーして起動すると アプリケーションのコンポーネントで、ハンドルされていない例 外が発生しました。続行をクリックすると、アプリケーションは このエラーを無視し、続行しようとします。終了をクリックする と、アプリケーションは直ちに終了します。 ファイルまたはアセンブリ OpenCVLib, Version=1.0.3985.38532,Culture=neutral, PublicKeyToken=null,またはその依存関係の1つが 読み込まれませんでした。間違ったフォーマットの プログラムを読み込もうとしました。 となります。 OpenCV-2.1.0-win32-vs2008.exeをインストールして Pathも通してみたのですが、変わりません。 他に対処方法はありますでしょうか。

  • VS2005、C#、Excel2002でExcelの操作

    現在、開発環境が、 WinXP VS2005 Excel2002 なのですが、VS2005の参照の追加で、 Microsoft Excel 10.0 Object Library を追加すると、参照設定の「Excel」にビックリマークが出て、 「タイプライブラリ"Excel"のラッパーアセンブリが見つかりません。」と、 「参照コンポーネント'Excel'が見つかりませんでした。」 の2つの警告が出て、Excel操作の記述が書けません。 ちなみに、参照設定「Excel」のプロパティを見ると、パスが空になっています。 この状況で、C#でExcelを操作できるようにするにはどうしたらよいかご教授いただければ幸いですm(_ _)m

  • 参照設定 VBAとvb.net

    VBAの場合、他のアプリケーションを参照する場合は、 参照設定でMicrosoft Excel xxx Object Library にチェックを付ければ良いだけだけど、 vb.netの場合は、 参照設定で、Microsoft Excel xxx ObjectLibrary にチェックを付けた上で、更に Imports Microsoft.Office.Interop の宣言をしないといけないのですか? (例はエクセルです) Imports Microsoft.Office.Interop をし忘れると、 [型 'Excel.Workbook' が定義されていません。] と言うエラーが発生します。

  • 参照設定に追加したいものが出てこない場合は?

    VisualStudio2005で、Excel操作をするプログラムを作ろうとしています。 参照設定で「Microsoft Office 11.0 Library」を追加したのですが、 インポートされた名前空間に出ているはずの 「Microsoft.Office.Interop」が見つかりません。 マシンの環境にはExcel2003が入っています。 何か設定するものが足りないのでしょうか?

  • XPでのPC起動時にエラーメッセージが・・・・

    お世話様です。PC初心者で、かつ、このカテゴリーでよいかは分からないのですが、よろしくお願いします。 環境はXPホーム、ウィルスバスターの2007バージョン使用です。 で、症状は表題の通り、以下のメッセージが毎回表示されます。 Microsoft Net Frameworkで、「アプリケーションのコンポーネントで、ハンドルされていない例外が発生しました。〔続行〕をクリックするとこのエラーを無視し続行しようとします。〔終了〕をクリックするとアプリケーションは直ちに終了します。オブジェクト参照がオブジェクトインスタンスに設定されていません。」 因みに〔続行〕を押すとVideora iPod Converterの画面に展開して、No Jobs Queuedと表示が見えます. iPodは家族が使用しますが、私は良く分かりません。 毎回〔終了〕を押すのも煩わしいので、上手い方法はないのでしょうか?

  • "Locstionができなくなりました”の訂正

    数日前に"Locationができなくなりました"というタイトルで質問させて頂きました。 内容に誤りがありましたので、再度質問させて頂きます。 実はVB2008でExcelを使用するわりと大きなプログラム「ブリッジ」を作成中です。Excelの操作を勉強するため、練習用のプロフラム「Excel練習」を作成し、ここでExcelの操作を勉強しました。 この「練習用プログラム」ではExcelの参照設定を行い、Importもし、皆様の助けを頂きながらなんとか完成することが出来ました。ちなみに”Excelの参照設定”、”Import”の内容は Excelの参照設定:Imports Microsoft.Office.Interop.Excel Import記述内容:Imports Microsoft.Office.Interop です、そこでこの内容を「ブリッジ」に移植した所問題が発生しました。「ブリッジ」では。Excelに関する宣言で「Application'は名前空間'Microsoft.Office.Interop.Excel'では不適切です」とエラーメッセージが表示されます。下記がその例です。   Dim oXls As Excel.Application:Excel.Applicationにエラー ところが”Import”の記述内容を   Imports Microsoft.Office.Interop.Excel  :.Excelを追加 とすると、Excelに関する宣言でのエラーが無くなる代わりにLocatinをしようとしたところ で Label14.Location = New Point(350, 100) :Pointに「Pointは、名前空間Microsoft.Office.Interop.Excelでは不適切です」とエラーメッセージが表示されます。 全くの初心者なのでエラーの原因が全く判りません。ご教示のほどよろしくお願い致します。