• ベストアンサー

ASPでEXCELを扱うには?

こんにちは。 ASPでEXCELを起動させたいのですが、 Set objExcel = CreateObject("Excel.Application") ここでエラーが出ます。 ”ActiveX コンポーネントはオブジェクトを作成できません。: 'Excel.Application'” 環境はwindows2000とEXCEL2000です。 最終的には、EXCELの各シートをCSVで保存したいと思っています。 初心者ですがよろしくお願いします。

  • Layga
  • お礼率94% (16/17)

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

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

初心者とのことなので覚えておくと良いでしょう。 http://support.microsoft.com/kb/257757/ja マイクロソフトは Office 製品をサーバ上でオートメーションで動かすことを一切サポートしていません。 また上記ページにも書いてありますが、ライセンスにも気をつける必要があります。 -- 引用ここから -- 現在のライセンス ガイドラインでは、クライアントサイドに Office のライセンスを受けたコピーがない場合は、Office アプリケーションをサーバーに配置して、クライアント要求に対するサービスを提供することは許可されません。 -- 引用ここまで -- てことは、正規の Office ライセンスが ・ サーバ ・ CSV 出力をする Web ページを利用する全クライアント PC で必要になります。 (ライセンスの事は最終的にはマイクロソフトに質問してください。私の回答は法的に正式な回答にはなりませんので) んでエラーの意味ですが、それも上記ページに書いてあります。 ご確認下さい。

関連するQ&A

  • ASPでExcelファイルを開く場合

    ASPでExcelファイルを開く場合WEBでいろいろ検索すると Set ObjExcel = Server.CreateObject("Excel.Application") ObjExcel.Workbooks.Open"****.xls" で開く方法が記載されていたので ためしているのいですが Set ObjExcel = Server.CreateObject("Excel.Application") でエラーが出てしまいます。 解決する方法はありますでしょうか。 環境:Windows XP,IIS,Office 2003 **************************************************** エラー タイプ Server オブジェクト, ASP 0178 (0x80070005) 許可を確認中に Server.CreateObject の呼び出しに失敗しました。このオブジェクトへのアクセスは拒否されます。 *****************************************************

  • 【緊急】ASPでのExcel出力方法について

    いつも参考にさせていただいております。 現在、aspで作成したweb環境を運用しております。 その中で抽出したデータをExcelに出力する処理がありますが、これを以下の方法で行っております。 ==================================== response.buffer = true response.ContentType = "application/vnd.ms-excel" response.AddHeader "content-disposition", "inline; filename=dynamic.xls"  ~ response.flush response.end ==================================== ただ、「Excel2013」であることから、出力されたExcelを開くたびにバージョン不一致の警告(ファイル形式と拡張子が一致しません)が表示されて不便です。 よって、Excel出力をExcelオブジェクトを用いた方法に変更しようと考えております。 ==================================== 'ファイルシステムオブジェクト生成 Set oFs = Server.CreateObject("Scripting.FileSystemObject") 'テンポラリファイル名取得 sFileName = Split(oFs.GetTempName, ".") 'エクセルファイル名にする sXlsName = sFileName(0) & ".xls" 'テンプレートが保存されているフォルダの物理パスを取得 sPath = oFs.GetFolder(Server.MapPath("/hogehoge/")).ParentFolder 'エクセルのオブジェクトを生成 Set oXls = Server.CreateObject("Excel.Application") 'エクセルのテンプレートファイルを開く Set oTmp = oXls.Workbooks.Open(sPath & "\temlate\template.xls")  ~ ==================================== ここからが質問です。 Excelオブジェクト作成時、エラーになってオブジェクトの作成が失敗します。 ==================================== 【オブジェクト作成を「Server.CreateObject」で行った場合】 Set oXls = Server.CreateObject("Excel.Application") ⇒ 以下のエラーが表示されます。   Server オブジェクト エラー 'ASP 0177 : 80080005'   Server.CreateObject に失敗しました 【オブジェクト作成を「CreateObject」で行った場合】 Set oXls = CreateObject("Excel.Application") ⇒ 以下のエラーが表示されます。   Microsoft VBScript 実行時エラー エラー '800a01ad'   ActiveX コンポーネントはオブジェクトを作成できません。: 'Excel.Application' ==================================== いろいろなサイトを情報をもとに対応しましたが、解決の糸口が見えない状況です。 ==================================== 【今まで試みた対応】 (1)コンポーネントサービスの「DCOMの構成」にて、「Microsoft Excel Application」の「起動とアクティブ化のアクセス許可」に「EveryOne」を追加。 (2)以下のフォルダを用意してフォルダのアクセス許可に「EveryOne」を追加。  C:\Windows\System32\config\systemprofile\Desktop  C:\Windows\SysWOW64\config\systemprofile\Desktop (3)オブジェクト作成時、「Excel.Application」を「Excel.Application.15」に変更。 ==================================== なお、開発環境は以下となります。 ==================================== 【開発環境】 OS:windows 8.1 64bit IIS:8.5 Excel:2013 その他:(1)aspを使用(.netではありません)     (2)「windows 8.1」はあくまでテスト環境です。      正常に動作することを確認後、本番環境「Win2008Server R2」に組み込む予定です。 ==================================== 私事ではありますが、スケジュール的に押し迫っております。 お忙しいところ申し訳ありませんが、解決方法のご教授をお願いいたします。 以上です。

  • VBScriptからEXCELのVBAコマンドを実行するには?

    VBScriptからEXCELのVBAコマンドを実行するにはどうしたら良いでしょう? 例) Set P_OBJEXCEL = CreateObject("Excel.Application") ※ここで EXCEL VBA の Chdir "N:\"を行いたい W_INFILE = P_OBJEXCEL.Application.GetOpenFilename("EXCEL(*csv),*.csv",,"入力ファイル") P_OBJEXCEL.Application.Quit 環境→EXCEL2000+Windows2000+IE6 目的→入力ファイルを取得ため、N:\配下をGetOpenFileNameにて開きたい ※EXCELのデフォルトパスを変更したくないため 何かヒントを御願いします

  • VB6でExcelシートのコピー、貼付け

    VB6でExcelファイルを開いてシートをコピーし、新規ファイルとして保存したいのですが方法がわかりません。 (既存のExcelシートを雛形として新しくBookを作りたいんです) Set objexcel = CreateObject ("Excel.Application") Set objexcel_new = CreateObject("Excel.Application") objexcel.Workbooks.open (App.Path & "\book1.xls") objexcel_new.Workbooks.Add '新規に作る 'シートのコピー objexcel.sheets("Sheet1").Copy objexcel_new.sheets("Sheet1").Select objexcel_new.activesheet.Paste としても、実行前のクリップボードの中身が貼り付けられるだけで、シートがコピーできません。 よろしくお願いします。

  • Excelオブジェクトの解放

    VBでExcelを編集しています。 下記コードを実行するとExcelがタスクに残ったままになります。 どうしたら解放されるでしょうか。 (処理は少し省略しています) Dim objExcel as Object Dim objExcelBook as Object Dim objExcelSheet as Object Set objExcel = CreateObject("excel.application") Set objExcelBook = objExcel.Workbooks.Open(パス, 0) Set objExcelSheet = objExcelBook .Sheets(シート名) With objExcelSheet.Range(Cells(1,2),Cells(3,2)).Borders(xlEgeBottom) .LineStyle = xlContinuous End With Set objExcelSheet = Nothing Set objExcelBook = Nothing Set objExcel = Nothing

  • Acc→Excel編集 セルのセンタリング

    ACCよりEXCEL編集にて、セルのセンタリングが出来ずに 困っています・・・ オートフィットや、シートのヘッダ、フッター編集などは ナ難なくできたのですが・・・ 以下のロジックで『RangeクラスのHorizontalAlignmentプロパティを 設定できません』 のエラーが返ってきてしまいます。 宜しくお願いします! '*** EXCEL接続 Dim objEXCEL As Object Set objEXCEL = CreateObject("Excel.Application") *** 編集 *** objEXCEL.Cells(1, 1).Select objEXCEL.Selection.HorizontalAlignment = xlCenter

  • VBでExcelファイルの編集

    VBでExcelファイルを作成しようとしていますが、罫線を引くとき、Rangeで範囲を指定しているんですが矩形でかかれず、一本線だけが書かれてしまいます。 どうしたら四角く矩形で罫線が書かれるか教えてください。 Set objExcel = CreateObject("Excel.Application") 'エクセルオブジェクト作成 objExcel.Visible = False 'エクセルを非表示で objExcel.Workbooks.Add '新規に作る With objExcel.Sheets("Sheet1").Range("a19:k29").Borders(1) .LineStyle = xlContinuous .Weight = 4 .ColorIndex = xlAutomatic End With

  • このVBSの修正点を教えてください。

    Dim objExcel 'Excelのオブジェクトを作成する Set objExcel = CreateObject("Excel.Application") 'Excelを見えない形で表示させる。 objExcel.Application.Visible = True 'Excelブック①のパスとシート名を選択 objExcel.Workbooks.Open("C:\Users\user\Desktop\1_作成\銀行借入調達返済\2307-2406銀行借入調達返済 (全社表示).xlsm ") objExcel.Worksheets(objExcel.Worksheets.Count).select '実行するマクロ名を指定。 objExcel.Application.Run "CopyWorksheets_And_Autofill" objExcel.Application.Run "CopyNewBook" Set objExcel = Nothing 保存はANSIで.vbsで保存しました。

  • ASPでエクセルの起動

    わかる方教えて下さい。 Set xlsApp=server.CreateObjec("Excel.Application") Set xlsBook =xlsApp.Workbooks.Add Set xlsSheet = xlsBook.Sheets.Add xlsBook.Application.Visible = True でASPからエクセルを起動したいと思いましたが、 『Server オブジェクト, ASP 0178 (0x80070005) 許可を確認中に Server.CreateObject の呼び出しに失敗しました。このオブジェクトへのアクセスは拒否されます。』 というエラーでエクセルが起動しません。 構文が悪いのでしょうか? それともサーバー側で何か設定しなくてはいけないのでしょうか? 但しサーバーと言ってもWin2000 Professional のOsクライアントですが(当然IIS等はセットアップ済)それがいけないのでしょうか? お願い致します。

  • excel2010でのCreateObject

    OS:Windows7Pro Office:オフィス2010 Excel2007で作成したメール一括送信プログラムがExcel2010でエラーが発生します。 CreateObject メソッドを使用して Outlook Application オブジェクトを作成する際に 「実行時エラー'429' ActiveXコンポーネントはオブジェクトを作成できません。」 と表示されます。デバッグ画面では Dim myOLApp As Object Dim myDATA As MailItem '### OUTLOOKのオブジェクトを作成後、メールを新規作成する。 Set myOLApp = CreateObject("Outlook.Application")   Set myDATA = myOLApp.CreateItem(olMailItem) の Set myOLApp = CreateObject("Outlook.Application")  この部分でエラーになっています。 VB6.0SP6ランタイムのインストールをしましたが状況は変化しません。 Excel2007では正常に動作します。 どこを修正すればよいのでしょう? ご教授いただけると幸いです。宜しくお願いいたします。

専門家に質問してみよう