Newsgroup: it.comp.lang.visual-basic
Titolo: stampa unione con word senza apparizione della finestra di stampa

Ciao a tutti
allora io sto facendo una Stampa Unione da VB6 e non faccio altro che
richiamare un foglio in word che fa riferimento per la stampa unione ad
un file excel
ho fatto il codice per richiamare con MailMerge il foglio di word
ma quando lancio VB con il sendPrinter mi apre la schermata della stampa
e sono obbligato a premere OK per mandare in stampa i Fogli
come Posso evitare di far apparire la schermata di STAMPA senza premere
OK???
c'č un Modo?
mi aiutate?
questo č il codice
Set WordObj = CreateObject("Word.Application")
Set WordDoc = WordObj.Documents.Open("c:\charge_off\Modelli\Prova.doc")
    With WordObj.ActiveDocument.MailMerge
 
       '.Destination = wdSendToNewDocument
 
 
       With .DataSource
           .FirstRecord = wdDefaultFirstRecord
           .LastRecord = wdDefaultLastRecord
 
       End With
 
        .Destination = wdSendToPrinter
        .SuppressBlankLines = True
        .Execute
    End With
'WordObj.Visible = True
Set WordObj = Nothing
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Se devi stampare sulla stampante di default o conosci a priori il nome della
stampante te le cavi con poco, come suggerito con pochi post precedenti io
ho provato a registrare una macro con word dove lancio una stampa per vedere
poi lui cosa scrive in VBA, il codice e' qualcosa del tipo
    ActivePrinter = "CadJet 2"
    Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
        wdPrintDocumentContent, Copies:=2, Pages:="",
PageType:=wdPrintAllPages, _
        ManualDuplexPrint:=False, Collate:=True, Background:=True,
PrintToFile:= _
        False, PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0,
_
        PrintZoomPaperHeight:=0
Tradotto nel tuo codice dovresti chiamare la Printout dal WordObj
passandogli come FileName il nome di WordDoc... di sicuro lo sai gia' ma
molti parametri possono essere omessi (verranno applicate le impostazione di
default) quindi il tutto si potrebbe semplificare a
    Application.PrintOut FileName:=""
Nei miei esemi il parametro FileName e' una stringa vuota perche' lavoravo
su un file nuovo che non ho mai salvato....
Sperando d'esser stato d'aiuto...
Andrea

Application.PrintOut va benissimo
ma per la stampa unione mi stampa la pagina di word che fa da
collegamento
con tutte le altre pagine che contengono effettivamente i dati
come si può fare??
With WordObj.ActiveDocument.MailMerge
 
       .Destination = wdSendToNewDocument
 
       With .DataSource
           .FirstRecord = wdDefaultFirstRecord
           .LastRecord = wdDefaultLastRecord
 
       End With
 
        .Destination = wdSendToPrinter
        .SuppressBlankLines = True
        .Application.PrintOut   ' qui dovrebbe stamparmi tutti i record
        '.Execute
 
    End With
"Andrea" <N...@NSP.it> wrote in message
news:YSCpd.406385$
35.17...@news4.tin.it



cioč voglio stampare le pagine che vengono create con il collegamento
APPLICATION.PRINTOUT mi stampa solo la stampa del foglio di origine


In effetti, parlando in word-linguaggio, tu non devi "stampare" bensi'
"unire alla stampante".... l'unica cosa che posso ripeterti di fare e'
provare a fare la stampa uniione registrando una macro in word e vedere come
lui la gestisce....
In alternativa postresti "Unire ad un documento" e stampare quello....