• ベストアンサー

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

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

  • ken2r
  • お礼率88% (82/93)

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

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

ムリです。 参照設定で指定している場合、Excelどころか、そのバージョンにも依存します。

ken2r
質問者

お礼

ご回答有難うございました。

関連するQ&A

  • 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の取得までは出来たのですが、ここから先がわかりません。よろしくお願いいたします。

  • Visual Basic.Netの環境条件って

    プログラム初心者です。 私のやりたいことに対して、 次の考えがあっているかを教えてください。 プログラミングは Visual Basic.Net を行いたいと思ってます。 (Visual Basic 6.0ではありません) パソコンにはすでに Microsoft Visual Studio 2005 と Microsoft .NET Framework SDK がインストールされてます。 この環境で Visual Studio2005 を起動させて VisualBasic2005を操作することが Visual Basic.Netのプログラミングをしている ということになるのしょうか? つまり、.Net FrameWork がインストールされていれば、 ○○.Netの開発環境ということになると思っているのです。 「Visual Studio2005 だけの環境」 = ○○.Netではない。 「Visual Studio2005 +.NET Framework 」= ○○.Netである。 申し訳ありませんが、もし間違っていたら Visual Basic.Netの環境条件を教えてください。 よろしくお願いします。

  • 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をコピーする処理です. ★のところで上の例外が発生してしまいます. 以上,よろしくお願いします.

  • 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でそのファイルを開いている状態でシステムを起動したり、ファイルにロックが掛かっている状態で無い事も確認しました。 読み取り専用の属性もファイルにはありません。 同じような現象を経験した方がいらっしゃれば是非とも情報をよろしくお願いいたします。

  • vb.netからエクセルファイルを開きたいのですが

    vb.netからエクセルファイルを開きたいのですが、 オフィス2010をインストールしてから動作しなくなりました。 ------------------------------------------------------------------------ Imports Microsoft.Office.Interop Sub ExcelOpen() Dim ExcApp As Excel.Application Dim book As Excel.Workbook Dim MyPath As String MyPath = "C:\Excel.xlsm" ExcApp = CreateObject("Excel.Application") ExcApp.Visible = True book = ExcApp.Workbooks.Open(MyPath) ExcApp = Nothing End Sub ------------------------------------------------------------------------ これで2007の時は起動してたのですが、2010だとダメです。 Microsoft Excel 14.0 Object Libraryに参照設定しています。 実行すると、 ExcApp.Visible = True の部分で サーバーによって例外が返されました。 (HRESULT からの例外: 0x80010105 (RPC_E_SERVERFAULT)) となります。 どうすればいいでしょうか?ご教授よろしくお願いします。

  • VB2005→Excelへの出力

    現在、以下環境にてシステム開発を行っています。 OS:WindowsXP DB:SQL Server 2005 画面系:Visual Studio 2005 (VB) 帳票系:Microsoft Office 2003 (Excel) ここで質問なのですが、 VBにて取得したデータ(DBから取得)を、 Excelファイルの帳票テンプレートの名前付きセルに貼り付けたいのですが、 方法がわかりません。VB、Excelでの開発(プログラミング)初心者です。 「Imports Microsoft.Office.Interop.Owc11」 をインポートしてるだけで停まっています。 情報足らずであれば、また追記します。 とりあえず要件まで。 宜しくお願いします。

  • 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) ↓↓以下省略 (開放は行っています。)

  • 64ビット開発環境構築について

    64bitアプリケーションの開発環境構築で悩んでます。 現在の環境は、Microsoft Visual Studio 6.0、 Visual C++ 6.0です。 Milrosoft Pratform SDK SP1もインストールしました。 で、どのようにすると、64bitアプリケーションを作成できるのでしょうか? Visual Studio 2003.NETや2005の手法は見つけるのですが、Studio 6.0 また、Visual C++ 6.0での方法が見つかりません。 どなたか、やられたことのある方、もしくは参考のサイトをご存知の方は教えてください。 よろしくお願いします。

  • VBでエクセルのデータを取り込む方法

    VB2010にエクセル(2003)のデータを取り込みたいのですが、うまくいきません。 どうすればよいのでしょうか。 外部アプリなので、Public Class Form1の前にImports Excel = Microsoft.Office.Interop.Excel と記入、dim xlapp as excel.apllcation dim xlbook as exce.book dim xlsheets as excel.sheets と記入してみますがこの時点でコードエラーとなります。(ネットで調べこのように記述しました) どうすればいいでしょうか。 すみません。vb初心者なので詳しく教えていただくとたすかります。 よろしくお願いします。

  • windows2000でC++の環境を整えたいと思っています。

    windows2000でC++の環境を整えたいと思っています。 使用するアプリケーションの都合上、windows2000を使わざるを得ない状況です。 C++の環境を整えようと思いvisual studio2008をインストールしようとしたら windows2000にはインストールできないとのことでした。 この場合、新たにvisual studio2005を買うなどしなければC++をインストールすることは 不可能ということでしょうか。 他に方法がありましたら教えてください。よろしくお願いします。 (パソコンを買い換えるということも考えておりますが、windows2000で使えるようになると一番嬉しいです!)

専門家に質問してみよう