• ベストアンサー

IronPython でのエラー

はじめまして。 IronPython を使ってexcelのファイルの操作を考えております。 ネット上でサンプルを見つけてので実行を試みたのですが下記のようなエラーがでしまい先に進むことができません。 解決法についてご教授していただければ思います。 または、IronPython の使い等についても、気が付いたことがあれば教えていただければと思います。 よろしくお願いいたします。 エラー: IronPython 2.0 (2.0.0.0) on .NET 2.0.50727.1433 Type "help", "copyright", "credits" or "license" for more information. >>> import clr >>> clr.AddReference("Microsoft.Office.Interop.Excel") Traceback (most recent call last): File "<stdin>", line 1, in <module> IOError: Could not add reference to assembly Microsoft.Office.Interop.Excel 実行環境: OS→XP IronPython →2.0.1 .net → 2.0 SP1 

  • Python
  • 回答数2
  • ありがとう数4

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

  • ベストアンサー
  • nas02
  • ベストアンサー率70% (22/31)
回答No.2

Microsoft Office XPはPIAが用意されていないので別途登録する必要があります。 Microsoft Office XP 用の PIA (Primary Interop Assemblies) のダウンロード http://support.microsoft.com/kb/328912/ja これを登録してから実行して下さい。 IronPythonの使い方については、英語ですがここが参考になるかも http://www.ironpython.info/index.php/Contents

setunakamo
質問者

お礼

nas02さんありがとうございますーー。 実行することができました!! >Microsoft Office XPはPIAが用意されていないので別途登録する必要がありま >す。 そうだったんですね。無知で申し訳ございません。 本当に助かりましたー!!! ありがとうございます!!

その他の回答 (1)

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.1

Officeはインストールされてますか?

setunakamo
質問者

お礼

ご指摘ありがとうございます。 環境に書くの忘れてました。 Officeはインストールされております。

関連するQ&A

  • CreateObjectでエラー発生(Excel2007が悪い?)

    下記の環境、プログラムで"ActiveXコンポーネントを作成できません。"のエラーが出て困っています。 毎回ではなく、「1回目はエラーで、2回目以降は出ない」「たまに出る」など、動作が一定ではありません。 Excel2003では問題なく動作するので、Excelのバージョンを変更しようかとも考えています。(高価で入手しにくいので踏み切れずにいます。) Excel2007とVBの問題なのでしょうか? プログラムの変更で解決すればいいのですが…。 ご教示ください! ****** 環境 ****** OS:WindowsXP Professional Ver.2002 SP2 (Microsoft .NET Framework 2.0 Configuration) Excel:Microsoft Office Excel 2007 言語:VB2005 SP1 参照先:Microsoft Excel 12.0 Object Library ****** プログラム ****** Dim xlApp As Microsoft.Office.Interop.Excel.Application Dim xlBook As Microsoft.Office.Interop.Excel.Workbook Dim xlSheet1 As Microsoft.Office.Interop.Excel.Worksheet Try xlApp = CType(CreateObject("Excel.Application"),Microsoft.Office.Interop.Excel.Application) xlBook = CType(xlApp.Workbooks.Open("C:\File\OutPutSheet_1System.xls"),Microsoft.Office.Interop.Excel.Workbook) xlSheet1 = CType(xlBook.Worksheets(1),Microsoft.Office.Interop.Excel.Worksheet) ↓↓以下省略 (開放は行っています。)

  • Pythonのコンパイルの仕方が分かりません。。

    Pythonのコンパイルの仕方が分かりません。。 最近、Pythonをやり始めて、 スクリプト(hello.py)を作成したのですが、 実行ができません。 どうしたらよいのでしょうか。 どなたか回答お願いします。 あと[hello.py]の中身は print “Hello, world!” です。 command lineには Python 2.5.1 (r251:54863, Apr 18 2007, 08:51:08) [MSC v.1310 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> と表示されていて、 hello.py と打つと、 Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'hello' is not defined >>> 返ってきます。

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

    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のシートをコピー

    環境は,Visual Studio 2005 Standard Editionです. プログラムを実行後,以下の例外が発生しました. 「HRESULT からの例外: 0x800A03EC」 発生場所は★の位置です. ここから------- Dim xlApp As Microsoft.Office.Interop.Excel.Application = Nothing Dim xlBook As Microsoft.Office.Interop.Excel.Workbook = Nothing Dim xlSheet As Microsoft.Office.Interop.Excel.Worksheet = Nothing xlBook = xlApp.Workbooks.Open("ファイルのパスが入ります") xlSheet = xlBook.Worksheets("シート名が入ります") Dim xlBook2 As Microsoft.Office.Interop.Excel.Workbook = Nothing Dim xlSheet2 As Microsoft.Office.Interop.Excel.Worksheet = Nothing xlBook2 = xlApp.Workbooks.Open("ファイルパスが入ります") xlSheet2 = xlBook.Worksheets("シート名が入ります") 'Excelを表示しない xlApp.Visible = False xlSheet.Copy(Before:=xlSheet2) ★ ここまで-------------- やろうとしているのは,xlSheet2のシートを含むExcelファイルに,xlSheet2の前にxlSheetをコピーする処理です. ★のところで上の例外が発生してしまいます. 以上,よろしくお願いします.

  • "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では不適切です」とエラーメッセージが表示されます。 全くの初心者なのでエラーの原因が全く判りません。ご教示のほどよろしくお願い致します。

  • TextBoxに入力した文字をExcelに書き込むには?

    VB2008を使用しています。 VBフォーム内のTextBox1に入力した内容(例 りんご)をBottanを押すことによりExcelの指定したセル(例 A1)に書き込んで保存する方法はありますでしょうか? 現在、以下のところまでは出来ています。 ' excelを定義 Dim excel As New Microsoft.Office.Interop.Excel.Application ' excel testをファイルから開く Dim book As Microsoft.Office.Interop.Excel.Workbook book = excel.Workbooks.Open("C:\test.xls") ' 1枚目のワークシートを取得 Dim sheet As Microsoft.Office.Interop.Excel.Worksheet sheet = CType(book.Worksheets.Item(1), Microsoft.Office.Interop.Excel.Worksheet) Excelの開放からsheetの取得までは出来たのですが、ここから先がわかりません。よろしくお願いいたします。

  • .Netでエクセルを操作する環境

    環境:Visual Studio 2010 + C# + Microsoft.Office.Interop.Excel を使ってWindows Formからエクセルブックを操作(オープン、編集、保存) しようと考えています。 そこで質問なのですが、 Microsoft.Office.Interop.Excelは、Office(エクセル)がインストールされていない環境 でも使用できますか? ご存知の方がいたら教えて下さい。よろしくお願い致します。

  • 参照設定 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' が定義されていません。] と言うエラーが発生します。

  • [AutoCAD 2007] CUIを変更しようとすると エラーが出ま

    [AutoCAD 2007] CUIを変更しようとすると エラーが出ます ●エラーの出る操作 [表示]-[ツールバー]から 『ユーザーインターフェースをカスタマイズ』の画面で、 [コマンド一覧]内にあるコマンドを [すべてのCUIファイルないのカスタマイズ]へ移動(コピー) するとエラーが出ます ●エラーの内容   アプリケーションのコンポーネントで、ハンドルされていない例外が発生しました。   [継続]をクリックすると、アプリケーションはコノエラーを無視し、   続行しようとします。      ファイルまたはアセンブリ'Autodesk.AutoCAD.Interop,   Version=17.0.54.0,Culture=neutral,   PublicKeyToken=eed84259d7cbf30b'、   またはその依存関係の1つが読み込めませんでした。   指定されたファイルが見つかりません。。 ★ここで[続行]ボタンを押しても移動出来ず何の変化もありません [詳細]ボタンを押すと下記(字数の関係で省略しています)の内容が出ます。   アプリケーションは、Just-In-Time (JIT) デバッグをサポートしません。   詳細については、このメッセージの最後を参照してください。   ************** 例外テキスト **************   System.IO.FileNotFoundException: ファイルまたはアセンブリ   'Autodesk.AutoCAD.Interop, Version=17.0.54.0, Culture=neutral,   PublicKeyToken=eed84259d7cbf30b'、   またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。   ファイル名 'Autodesk.AutoCAD.Interop, Version=17.0.54.0, Culture=neutral,   PublicKeyToken=eed84259d7cbf30b' です。    場所 Autodesk.AutoCAD.Customization.CommandListViewDragDrop.getResourseFile       (MenuMacro menuMacro)   場所 Autodesk.AutoCAD.Customization.CommandListViewDragDrop.OnItemDrag       (ItemDragEventArgs e) ★省略 場所・・・後7個ほど続きます   警告: アセンブリ バインドのログ記録がオフにされています。   アセンブリ バインドのエラー ログを有効にするには、レジストリ値     [HKLM\Software\Microsoft\Fusion!EnableLog] (DWORD) を 1 に設定してください。   注意: アセンブリ バインドのエラー ログに関連するパフォーマンス ペナルティがあります。   この機能をオフにするには、レジストリ値 [HKLM\Software\Microsoft\Fusion!EnableLog]   を削除します。   ************** 読み込まれたアセンブリ **************   mscorlib    アセンブリ バージョン: 2.0.0.0    Win32 バージョン: 2.0.50727.3603 (GDR.050727-3600)    コードベース:      file:///c:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll   ---------------------------------------- ★省略 読み込まれたアセンブリ 25個ほど続きます   ************** JIT デバッグ **************   アプリケーションは、Windows フォーム Just-In-Time (JIT) デバッグをサポートしません。   詳細については、アプリケーション作成者に   問い合わせてください。 以上です。 いつからこのようなエラーが出るようになったかは不明です。 尚、AutoCADのCD-ROMを紛失してしまっていて再インストール出来ない状態なのですが、 なんとかCUIを使用できるように直せないでしょうか? お分かりになられる方ご回答よろしくお願い致します。 長文失礼致しました。

  • VB2010で作成したソフトのexeファイルが実行できません。

    VB2010で作成したソフトのexeファイルが実行できません。 以前、Windows XP上のVisual basic 6.0で作成したソフトを一部直すために、Windows7上のVisual basic 2010でそのままの形で書き直しました。しかし、以下の4つの警告文が出るためか、exeファイルを実行できません。その警告文は以下の通りですが、内容が理解できません。 1)アセンブリ 'AxInterop.Microsoft.Vbe.Interop.Forms' からの間接的な参照が原因で、埋め込まれた相互運用機能アセンブリ 'stdole' に対して参照が作成されました。両方のアセンブリで '相互運用機能型の埋め込み' プロパティを変更することを検討してください。 2)アセンブリ 'Interop.MSComDlg' からの間接的な参照が原因で、埋め込まれた相互運用機能アセンブリ 'stdole' に対して参照が作成されました。両方のアセンブリで '相互運用機能型の埋め込み' プロパティを変更することを検討してください。 3)アセンブリ 'Microsoft.Vbe.Interop.Forms' からの間接的な参照が原因で、埋め込まれた相互運用機能アセンブリ 'stdole' に対して参照が作成されました。両方のアセンブリで '相互運用機能型の埋め込み' プロパティを変更することを検討してください。 4)アセンブリ 'Microsoft.VisualBasic.Compatibility' からの間接的な参照が原因で、埋め込まれた相互運用機能アセンブリ 'stdole' に対して参照が作成されました。両方のアセンブリで '相互運用機能型の埋め込み' プロパティを変更することを検討してください。 以上、宜しくお願いします。

専門家に質問してみよう