出来るのだASP Q&A掲示板(過去LOG)
訪問数 52046
昨日 889
今日 776 【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。 |
![]() ![]() ![]() ![]() ![]() |
![]() ![]() ![]() |
![]() ![]() ![]() |
[3853] ASPでExcelを編集して保存する場合 |
投稿者:夏目さん 2003/12/07 23:10:43 |
夏目と申します。いつも拝見されていただいています。 ワークフローを作っています。 [登録]ボタンをクリックすると、 @Webサーバー上のExcelブックを開く Aあるセルに承認者のDate印を押す(描画オブジェクトで書きます) BExcelブックを上書き保存して閉じる C別サーバーのあるフォルダへExcelブックを移動する という、流れでつくろうと思っています。 質問ですが、 @Server.CreateObject("Excel.Application") を実行するためには、 WebサーバーにExcelが入っていなければだめですよね。 Excelなしで実行したら"ProgID..."というエラーが出ました。 Excelを入れたら動きましたが、 間違ったことをしていないかどうか、心配です。 (Excelはクライアントアプリケーションだ という認識が強いものですから) A複数の人が同時に、別々のExcelブックを開いた場合、 誰かがQuitしたときに、 ほかのブックも閉じられてしまうと思うのですが、 Quitする前に、開いているブックの数を調べ、0ならQuitを実行する という処理が必要ですか。 デスクトップで、複数のExcelを立ち上げていて、 閉じるボタンをクリックしたときに、 いっしょに閉じられてしまって、悔やんだことが何度もあります。 (確認メッセージは出ますが、'NO'を押してしまったとき) ASPをはじめたのは、ごく最近です。 あたりまえの事を聞くと思われるかもしれませんが、 よろしく、ご教授ください。 |
[3854] Re:ASPでExcelを編集して保存する場合 |
投稿者:fujiさん 2003/12/08 11:45:16 |
こんにちは夏目さん。 @は間違ってないですよ。 サーバー内部でエクセルを起動するので、 サーバーにエクセルがインストールされてないと ソフトが見つかりませ〜んってなります。 Aですが、CreateObjectするごとにエクセルは起動するので 他のブックを閉じることはないですよ。 ただ、1回のCreateObjectで開いたブックはすべて閉じますが。 これは、デスクトップでスタートメニューからエクセルを 2回起動して、1つのエクセルを閉じた場合は、 そのエクセルで開いていたブックは閉じますが、 もう一つのエクセルで開いているブックは閉じないのと同じです。 もし、エクセルの処理が時間のかかる処理なら、 サーバーマシンのタスクマネージャのプロセスタブを開くと、EXCEL.EXEが複数立ち上がってくるのが確認できますよ。 私もASPは初心者レベル(3ヶ月ぐらい)で人に教えることなんて 本当はしてはいけない(できない)ですが。。。(汗) ちょっとでもお役に立てればと、書き込みさせていただきました。 |
[3856] Re:ASPでExcelを編集して保存する場合 |
投稿者:夏目さん 2003/12/08 17:09:58 |
fujiさん、こんばんは。 わかりやすい回答、ありがとうございます。助かりました。 これで、不安なく、次へ進めます。 会社の情報システム部からは、 こういう使い方(Excelをサーバーへインストールする)は、 推奨しない(やめてくれ)といわれてしまいました。 Logを見ても、一般的な方法のようですし、 この方法で進めようと思います。 私は、ASPはじめて、1ヶ月くらいです。 HTMLもあまり知りませんので、 サンプルコードを見ながら、見よう見真似で作っています。 今後とも、よろしくお願いいたします。 |
TreeBBS For ASP V.0.1.3 |