Set oApp = CreateObject("Word.Application")
oApp.Visible = False
'apro il modello della lettera
oApp.Documents.Open Lettera
'eseguo la stampa unione dell'intestazione con output su un nuovo
documento
With oApp.Documents(1).MailMerge
.Destination = wdSendToNewDocument
.Execute
End With
'attivo il documento creato
oApp.Windows(1).Activate
'posso visualizzare il risultato per un controllo
oApp.Visible = True
'chiudo il modello documento senza salvarlo
oApp.Windows(1).Close SaveChanges:=wdDoNotSaveChanges
'chiudo word
' oApp.Quit
'rilascio gli oggetti
Set oApp = Nothing
End If
Il punto č questo: in un caso la riga del codice relativa al commento ---
'chiudo il documento senza salvarlo --- funziona bene e mi permette di
chiudere il modello di Word da cui si origina la stampa unione lasciando
aperto il documento unito, nel secondo caso viene chiuso il documento di
unione e rimane aperto il modello. Secondo voi per quale strana ragione
avviene ciň?
Grazie mille
Nina
Quale "secondo caso"?
Ciao.
--
Sergio MAZZA
2) nell'altro database e questo è il secondo caso ho come risultato la
chiusura del documento unito di stampa unione (output su un nuovo documento)
mentre mi rimane aperto il modello.
Come posso risolvere il problema ?
A me serve solo visualizzare il documento risultato della stampa unione,
cioè il file che di default viene chiamato LettereTipoX, e chiudere invece,
senza salvare ne tantomeno visualizzare, il file di stampa unione.
Grazie ancora Buon fine settimana
Ciao Nina
Con il mailmerge dovresti avere 2 documenti:
oApp.Windows(1)... = modello aperto;
oApp.Windows(2)... = documento creato;
prova a bloccare l'esecuzione del codice prima della riga incriminata
('chiudo il modello documento senza salvarlo) e guarda se hai due documenti
e in che posizione (1 - modello, 2 - documento creato)...
Ciao.
--
Sergio MAZZA
> Con il mailmerge dovresti avere 2 documenti:
> oApp.Windows(1)... = modello aperto;
> oApp.Windows(2)... = documento creato;
>
> prova a bloccare l'esecuzione del codice prima della riga incriminata
> ('chiudo il modello documento senza salvarlo) e guarda se hai due
documenti
> e in che posizione (1 - modello, 2 - documento creato)...
>
> Ciao.
>
> --
> Sergio MAZZA
>
Ciao Sergio, ho fatto quanto mi hai suggerito, e in effetti ho verificato
che il File modello mi viene visualizzato in secondo piano.
Ho quindi modificato il codice per fargli chiudere oApp.Windows(2) e non
oApp.Windows(1) e funziona, anche se il file del documento creato non
visualizza le barre di Word (vado a spulciare la guida VBA in Word e spero
di trovare la soluzione.
Mi rimane difficile capire in che modo word ordini i documenti che apre,
visto che con lo stesso codice nell'altro database l'ordine di "apparizione"
dei documenti (modello e documento creato) era esattamente l'opposto.
Comunque, ti ringrazio tantissimo
A presto
Ciao Nina
Guarda, mi rimane difficile pure a me capire come due programmi (identici
per funzionalità) su due pc diversi (magari solo per sistema operativo) si
comportino in due modi differenti.
Per esempio ora sto combattendo con powerpoint; la presentazione che invio,
sul pc del mittente, non visualizza le animazioni!!! Nieeeenteee...
Ciao e buon lavoro.
--
Sergio MAZZA