出来るのだASP Q&A掲示板(過去LOG)  訪問数 52046 昨日 889 今日 776
    【PR】 パソコン入門からIT専門書まで幅広く取り揃えています。セブン-イレブン受取り手数料無料のセブンアンドワイ。
Topに戻る 掲示板に戻る 検索 削除 管理者

excelで印刷について   アキラさん [2002/07/09 8:56:08] [2301]
  Re:excelで印刷について   アキラさん [2002/07/09 11:28:11] [2302]
  Re:excelで印刷について   北岳さん [2002/07/15 17:47:11] [2332]
    Re:excelで印刷について   アキラさん [2002/07/23 12:40:47] [2349]
    サーバでの印刷手順   北岳さん [2002/07/23 18:07:34] [2350]

[2301] excelで印刷について
投稿者:アキラさん 2002/07/09 8:56:08
DBからデータを取ってきて、エクセルに書き込むのですが、
書き込んだあと、印刷しようとするのですが、
プリンタが設定されていませんとなります。
しかし、常に使うプリンタは設定されているのですが、
どうしたらいいのでしょうか?
ASPからプリンタを設定するようにするのでしょうか?
それとも違うやり方があるのでしょうか?
お願いします。

[2302] Re:excelで印刷について
投稿者:アキラさん 2002/07/09 11:28:11
もうひとつ質問なんですが、
エクセルの操作でセルの内容をセンターにもってくる
方法はどのようにしたらよいのでしょうか?
合わせてお願いします。

[2332] Re:excelで印刷について
投稿者:北岳さん 2002/07/15 17:47:11
プリンタをサーバのレジストリに登録しないと(⇒cf:[2327]Re:PDFファイルの印刷方法)
サーバで印刷はダメなようです。(面倒そう。)
 
<実験報告> 
しかし、aspからでも、Server.CreateObjectなど使わず、auto_openマクロを書いたxls を単に読むだけなら、
EXCELは、スタンドアロンのジョブと勘違いして、印刷してくれそうな気がしますね。
うん、名案。やってみましょう。
 
「デスクトップとの対話を許可」してある、ASPEXEC
http://www.serverobjects.com/products.htm
をインストール済みの、IIS(2000pro)サーバで、
次のマクロ(excel97で作成)を書いたxlsを、実行権があるフォルダに置き、
(スタンドアロンなら、このxlsを呼ぶだけで、シートを印刷してくれることは、確認済み。)
 
--------- d:\aspfold\test.xls ---------
Sub auto_open()
Sheets(1).Select
Cells.Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1
End Sub
----------------------------------------
 
1.aspから呼んだら、
 
--------------- 1.asp -----------------
<html><body>
<H3>ASPExec ExecuteWinAppAndWait Test</H3>
<%
Set Executor = Server.CreateObject("ASPExec.Execute")
Executor.Application = "d:\MSOffice\Office\Excel.exe"
Executor.Parameters = "d:\aspfold\test.xls"
Executor.TimeOut = 9000
Response.Write "Attempting to execute " & Executor.Application & "<br>"
intResult = Executor.ExecuteWinAppAndWait
if intResult = 0 then
Response.Write "Execution successful"
else
Response.Write "The result of this call was: " & intResult
end if
%>
</body></html>
-----------------------------------------
 
サーバ画面にtest.xls が立ち上がったものの、
「実行時エラー:プリンタが組み込まれていません・・・」が出ました。(う!気付かれた!)
結論:実験失敗。
 
************
>エクセルの操作でセルの内容をセンターにもってくる
>方法はどのようにしたらよいのでしょうか?
 
EXCEL-VBA の書き方は、マクロの自動記録を使えば、EXCELが教えてくれます。

[2349] Re:excelで印刷について
投稿者:アキラさん 2002/07/23 12:40:47
ありがとうございました。
また質問すると思いますが、その時はよろしくお願いします。
返事遅れました。

[2350] サーバでの印刷手順
投稿者:北岳さん 2002/07/23 18:07:34
>しかし、aspからでも、Server.CreateObjectなど使わず、auto_openマクロを書いたxls を単に読むだけなら、
>EXCELは、スタンドアロンのジョブと勘違いして、印刷してくれそうな気がしますね。
>うん、名案。やってみましょう。
 
結果的に、Win2000proサーバに接続したネットワーク・プリンタの紙に、
ASPから呼び出した既存xlsファイルのシートを印刷することは、できました。
WINDOWS 2000 professional+IIS5+ASP3(VBScript5.1)+IE5
 
それも、Server.CreateObject("Excel.Application")で呼ぶことにより、成功しました。
印刷ジョブを書いたauto_openマクロ入りのxlsを開く方法では、試みた範囲内では、印刷してくれない。
つまり上記「名案」では、ダメなようです。
 
----------------------- 
【サーバでの印刷設定手順】
(1) Baba Center Folds FAQ に従い、プリンタをサーバのレジストリに登録する。
詳細参照先として英語頁が紹介されていましたが、実際は馬場氏の文章だけで十分でした。
「デスクトップとの対話を許可」は済んでいましたが、そう言えば初めてのとき、この手順をあちこち検索して大変でした。
 
(2) ネットワーク・プリンタを、「通常使うプリンタに設定」する。
 
(3) ネットワーク・プリンタを共有し、
 場所(\\B123C100など)を明記し(ここ、ポイント)、
 セキュリティでEveryone(匿名認証の場合)に印刷許可を与える。
-----------------------
 
私の場合、サーバで紙に印刷する意味はないので、余り詰めませんでしたが、
(1)〜(3)を準備すれば、あとはaspからexcel(でもwordでも)をServer.CreateObjectして印刷できる筈です。
 
ちなみに印刷先をADOBE PDF-WRITERにすれば、pdfファイルも作れます。
が、残念ながら、Acrobatの使用許諾条件に
「(略)他のネットワークによる使用はいかなる場合でも認められません。」
と書いてありましたんで(ち!ち!敵もさる者)、やめました。
(サーバ用のPDF-WRITERなんて、検索で見つかりませんでしたが、あるのかしらね?)



TreeBBS For ASP V.0.1.3
Program By YasNet