tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルエクセルでのプリンタ設定ダイアログについて
記事No13471
投稿日: 2009/03/01(Sun) 05:06
投稿者epsilon
エクセルファイルをVBから呼出し、プリンタのプロパティを表示させてプリンタドライ
バの設定を出来るようにと、このサイトを参考にさせていただいて、下記のように組んで
見たのですが、xlApp.Application.Dialogs(xlDialogPrinterSetup).Show で表示されるプ
リンタ設定のダイアログ(プリンタ一覧)がフォーカスを失うとタイムアウトの様な形で
下記のメッセージボックスが表示され、切り替えも再試行も聞かない状態になってしまし
ます。
対象方法をご存知の方がいらっしゃいましたら、ご指導いただけませんでしょうか。
よろしくお願いいたします。

-----------------------------------------------------------------
「コンポーネントを使用できません」
他のアプリケーションがサーバーを使用しているため、この操作を完了
出来ません。操作を続けるには「切り替え」を選択して、他の
アプリケーションを終了してください。
 【切り替え(S)】 【再試行(R)】 【キャンセル】←無効
-----------------------------------------------------------------

Dim xlApp       As Excel.Application
Dim xlBook      As Excel.Workbook
Dim xlSheet     As Excel.Worksheet
Set xlApp = New Excel.Application
Set xlBook = xlApp.Workbooks.Open(App.Path & "\Faxform.xls")
Set xlSheet = xlBook.Worksheets(1)
xlApp.Application.ActivePrinter = PrinterDv
xlApp.Application.Dialogs(xlDialogPrinterSetup).Show
xlBook.Save
Set xlSheet = Nothing
xlBook.Close
Set xlBook = Nothing
xlApp.Quit
Set xlApp = Nothing

[ツリー表示へ]
タイトルRe: エクセルでのプリンタ設定ダイアログについて
記事No13473
投稿日: 2009/03/02(Mon) 11:45
投稿者YK
こんにちは。

>Set xlApp = New Excel.Application
xlApp.Visible = True
で直るけど、原因はプリンタダイアログの親ウィンドウが表示されていない為?
よく分からないです。

エクセルを表示するのが嫌だったらプリンタダイアログの画面から
マウスが外に出ないようにすればどうでしょう。

[ツリー表示へ]
タイトルRe^2: エクセルでのプリンタ設定ダイアログについて
記事No13479
投稿日: 2009/03/03(Tue) 19:44
投稿者epsilon
オートメションサーバとかのタイムアウトらしです。(過去ログ参照)

タイムアウトの時間を延ばすことで暫定的に対処してみました。

ご返答有難う御座います。

[ツリー表示へ]