- 日時: 2009/12/27 11:17
- 名前: 花ちゃん
- ***********************************************************************************
* カテゴリー:[ワード][印刷関係][] * * キーワード:Word,ワード,プリンター,差込印刷,, * ***********************************************************************************
元質問:Wordの印刷時に印刷中のダイアログを消すには - Starfish 2005/09/11-16:15 No.4361
早速ですが、VBからWordの差込印刷を裏で(画面のないプログラムで)行っているのですが、 印刷時に、Wordの印刷中のダイアログが表示されます。 このダイアログを表示させない方法ってありますでしょうか?
----------------------------------------------------------------------------------- Re: Wordの印刷時に印刷中のダイアログを消.. - 花ちゃん 2005/09/11-19:24 No.4364 -----------------------------------------------------------------------------------
質問時に差し込み印刷のコードを投稿頂いているので一緒に掲載しておきます。
Wordで印刷するところの、サブルーチンは以下のようになっています。
Private Sub PrintKaitousho(strDocName As String) 'Dim wrdApp As Word.Application ' Word.Application 'Dim wrdDoc As Word.Document ' Word.Document Dim wrdApp As Object ' Word.Application Dim wrdDoc As Object ' Word.Document Const wdSendToNewDocument = 0 Const wdDoNotSaveChanges = 0 ' エラーは次に進みます On Error Resume Next ' Word のインスタンスを作成し、表示します。 Set wrdApp = CreateObject("Word.Application") ' wrdApp.Visible = True '差し込み印刷設定してあるWordのファイルを開く Set wrdDoc = wrdApp.Documents.Open(gstrDocPath & "\" & strDocName) 'ファイルの差し替え wrdDoc.MailMerge.OpenDataSource Name:=gstrDataPath & "\Data.txt", LinkToSource:=True '差し込み印刷機能のオプションの設定 With wrdApp.Documents(1).MailMerge .Destination = wdSendToNewDocument '差し込み文書の送り先を設定 .SuppressBlankLines = False 'Trueの場合は空白行は印刷されない .Execute Pause:=True '指定されたデータの差し込みを実行します End With '文書(Documents(1))を印刷 印刷処理が終了するまで待機 wrdApp.ActiveDocument.PrintOut Background:=False '保存しないで終了 wrdApp.Quit SaveChanges:=wdDoNotSaveChanges 'オブジェクトを解放します。 Set wrdDoc = Nothing Set wrdApp = Nothing
End Sub
--------------------------------------------------------------------------- 試してはいませんが、下記ではどうでしょう。
wrdApp.ActiveDocument.PrintOut Background:=True
Do While wrdApp.BackgroundPrintingStatus > 0
Loop
' Dim St As Single ' St = Timer ' Do While Timer - St < 5 ' ' Loop
場合によっては、上記の後に少し待ち時間を作ってやるとか。
---------------------------------------------------------------- 以下の環境で、待ち時間なしでうまく動いているそうです。
WinXP Pro + Office 2003 + VB6.0SP6
|