• ベストアンサー

VS2005、C#、Excel2002でExcelの操作

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

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

  • ベストアンサー
  • dsuekichi
  • ベストアンサー率64% (171/265)
回答No.2

C#は詳しく無いので、見当違いかもしれませんが・・・ 「Microsoft Visual C# .NET を使用して Microsoft Excel を自動化する方法」 (http://support.microsoft.com/kb/302084/JA/) の、 「Microsoft Excel のオートメーション クライアントの作成 」の3.に ------------------------------------------------------------ 注 : Microsoft Office 2003 には、プライマリ相互運用機能アセンブリ (PIA) が含まれています。 Microsoft Office XP には PIA は含まれていませんが、ダウンロードできます。 ------------------------------------------------------------ とあります、Office XPの場合、ファイルをダウンロードしないといけないようにに読めますけど・・・ 実施済みなんでしょうか?

mamorix
質問者

お礼

紹介していただいたページの内容でうまくいきました(^-^) どうもありがとうございました。

その他の回答 (1)

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.1

http://www.dotnet.jp/Laboratory/technologies/vsto/com01.html Excel2002 は 11.0 のライブラリを読ませるみたいですよ。

mamorix
質問者

お礼

残念ながら11.0のライブラリは自分のPCには入っていませんでした。。。 ご回答、どうもありがとうございましたm(_ _)m

関連するQ&A

  • ビルドが実行できない 先へ進めない

    vb.netです。 モジュールでImports Microsoft.Office.Interopを宣言しています。 ビルドを実行すると --------------------------------------------------------------------------------- 警告 1 タイプ ライブラリ "VBIDE" のラッパー アセンブリが見つかりません。 WindowsApplication1 警告 2 タイプ ライブラリ "Microsoft.Office.Interop.Access" のラッパー アセンブリが見つかりません。 WindowsApplication1 警告 3 参照コンポーネント 'Microsoft.Office.Interop.Access' が見つかりませんでした。 警告 4 参照コンポーネント 'VBIDE' が見つかりませんでした。 --------------------------------------------------------------------------------- になってしまいます。 参照設定は画像のようになっています。 アクセスの参照設定をつけなおそうと思い、参照の追加→COMタブ Microsoft Access 12.0 Object Library を選んでOKを押すと、 「Microsoft Access 12.0 Object Libraryへの参照を追加できませんでした。 このタイプライブラリへの参照は既に存在します。 追加する前に参照を削除してください。」 になります。 ここからどうすればいいでしょうか? VBIDEの方も教えてください。 初心者なのです。ご回答よろしくお願いします。

  • Excelのオブジェクトライブラリへの参照について

    こんにちわ。 プログラムからExcelマクロを操作するのに、 VS.Netですと「プロジェクト」メニュー「参照の追加」-「COM」タブ内の【Microsoft Excel ○○ Object Library】を追加する必要があります。 この○○の部分にバージョン番号が入り、Excelのどのバージョンを使うかで変わるということもわかりました。 ちなみにVC#2002.NETを使っています。 ここで、 1.このCOMに入っている「Excel ○○」は、VS.Netの入っているPCの中のOffice環境に対応したもののみなのでしょうか? つまり、「Excel2000」が入っているPCのVS.NETで開発している場合は、「Excel9.0 Object Library」(より古い)のみしか候補として出ないのでしょうか? 2.上記認識が正しければExcel2000のみが入っているPCで開発しているが、「Excel10.0 Object Library」を使いたい場合、その方法はあるのでしょうか? どなたかよろしくお願いします。

  • Excel 12.0とExcel 10.0両方を使うアプリの参照設定方

    Excel 12.0とExcel 10.0両方を使うアプリの参照設定方法。。。  こんにちは,いつも勉強させていただいております. 質問させていただきます.どうぞよろしくお願いいたします.  開発環境:VB2008+XPになります。  Excel2003とExcel2007両方に使えるアプリを作成したい次第で ございますが、ビルド時の参照設定はどのようにすべきでございましょうか??  現在、2台のPCを交互に使用して作成いたしておりますが、 PC1:Excel2003のみインストール この場合、参照設定に   Excel 10.0 Object Library が必要   Excel 12.0 Object Library に対し「システムでは指定された参照が見つかりません」 PC2:Excel2007のみインストール   Excel 10.0 Object Library に対し「システムでは指定された参照が見つかりません」   Excel 12.0 Object Library が必要 となりますので、Excel 10.0とExcel 12.0を同時に参照することができませんorz  PCをチェンジする度に参照設定を変えている次第でございますが、 最終的にExeファイルを作成するときは、Excel2003とExcel2007両方を インストールしたPCでなければいけないのでございましょうか。。。???  もしお詳しい方がいらっしゃいましたら,是非ともアドバイスいただきたく どうぞよろしくお願いいたします。

  • 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つが読み込めませんでした。 指定されたファイルが見つかりません。 というエラーが表示されてしまいます。 原因がわかるようでしたら教えて頂きたいと思います。 よろしくお願いします。

  • VS2005でExcel操作でエラーが

    ご教授をよろしくお願いいたします。 現在、VS2005のBasicを使用してExcel操作のシステムを作っています。 行う事は、指定のExcelファイルをオープンし、指定のシートのセルにあるデータを格納してそのまま上書き保存をするだけです。 参照設定の追加 Microsoft Excel 11.0 Object Library 以下がそのソースの抜粋です。 Dim objExcel As Microsoft.Office.Interop.Excel.Application Dim objExcelBook As Microsoft.Office.Interop.Excel.Workbook Dim objExcelSheet As Microsoft.Office.Interop.Excel.Worksheet objExcel = CreateObject("Excel.Application") objExcel.Visible = False objExcelBook = objExcel.Workbooks.Open(FileName) objExcelSheet = objExcelBook.Worksheets(SheetName) objExcelSheet.Cells(row, col).Value = intData objExcel.DisplayAlerts = False objExcelBook.SaveAs(FileName) 開発環境はXP Pro SP2/VS2005/Visual Basic/Excel2003です。 開発環境で試験をした時はちゃんとファイルが保存されて正常に処理が完了するのですが、セットアッププログラム(VS付属のインストーラー)で別のパソコンにインストールしたプログラムは、以下のエラーが発生します。 「保護されているメモリに読み取りまたは書き込み操作を行おうとしました。他のメモリが壊れている事が考えられます」 違う環境のパソコンの複数台に試したのですが、同じ現象でした。 (Windows2000/XP/Excel2000/Excel2003) もちろん、Excelでそのファイルを開いている状態でシステムを起動したり、ファイルにロックが掛かっている状態で無い事も確認しました。 読み取り専用の属性もファイルにはありません。 同じような現象を経験した方がいらっしゃれば是非とも情報をよろしくお願いいたします。

  • VB2005でExcel2003とExcel2007

    初めまして、VB2005でExcelに出力するプログラムの開発を 行っているのですが、大変困っています。 どなたか教えて頂けないでしょうか。 VB2005の参照設定でMicrosoft Excel12.0 Object Library指定 してExcel2007をインストールしているパソコンでは Excelに出力できますがExcel2003を インストールしているパソコンではExcelに出力できません。 又、VB2005の参照設定でMicrosoft Excel11.0 Object Library指定 してExcel2003をインストールしているパソコンでは Excelに出力できますがExcel2007を インストールしているパソコンではExcelに出力できません。 Excel2003・Excel2007どちらがインストール されていてもExcelに出力できるプログラムを作成したいの ですが、何か方法はないでしょうか。 サンプル等があるHPがありましたら教えてください。

  • VB開発のMicrosoft Excel 9.0 Object Libraryでエクセル2007で動きますか?

    VB2008使用、エクセル2000インストールされている環境で開発しています。 参照の追加でMicrosoft Excel 9.0 Object Libraryを選択するのですが、プログラムインストール先がエクセル2007使用しているので、エクセル2007で正常に動くか心配です。 事前バインディングの方が開発が楽なので事前バインディングを使用したいと思っています。 Microsoft Excel 9.0 Object Libraryでもエクセル2007で正常に動作しますでしょうか? それともMicrosoft Excel 12.0 Object Libraryを使用しないとダメでしょうか? よろしくお願いいたします<(_ _)>

  • エクセル2007

    すいません。どなたかお教え下さい。 今までのエクセルでVBAで作ったもので、使えないものがあります。もともとの関数ではなく、Functionプロシージャ(でしたでしょうか?)で自分で作った関数が使えないようなのです。 新しいエクセルの参照設定はMicrosoft Excel 12.0 Object Libraryで、今までのはMicrosoft Excel 9.0 Object Library でした。(Microsoft Office 12.0 Object Libraryも同様に9.0でした) これが原因じゃないかと思っているのですが、もしそうだとすると、これの解決方法を教えて欲しいです。 これが原因じゃないとしたら、原因として考えられることを教えて欲しいです。 漠然とした質問で申し訳ないです。

  • 参照設定で・・・

    vb入門者ですが、よろしくお願いします。 2005を使っているのですが、 参照設定でCOMの Microsoft Excel11.0 object libraryを追加したいのですが、 追加するとパス名が、<システムでは、指定された参照が 見つかりません。>となってしまいます。 どうすれば、追加できるのでしょうか? 教えてください。よろしくお願いします。

  • EXCEL2000 VBAでのWORD参照設定

    EXCEL2007では、VBEのメニューから"MICROSOFT WORD *.* OBJECT LIBRARY"の参照設定が出来ますが、EXCEL2000ではWORD参照設定が見当たりません。 EXCEL2000 VBAでのWORD参照設定方法を教えて下さい。 会社では、まだEXCEL2000を使用しているので、よろしくお願いします。