Condividi:        

[vba access 2003]: printout stampa solo la prima pagina

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[vba access 2003]: printout stampa solo la prima pagina

Postdi karug64 » 14/02/13 23:13

Salve a tutti.

Nel mio codice apro un file doc, modifico il piè di pagina e stampo il documento.
Lo faccio con questo codice:

Codice: Seleziona tutto
nomefiletab = (Trim(Testo99.Value & "")) + "\" + Right("000" + Trim(CasellaCombinata34 & ""), 3) + "_test.DOC"
If FileEsiste3(nomefiletab) Then
    For nco = 1 To Val(tabst2co)
        piepag = ""
        piepag = "TEST - Allegato " & trim(str(nco))
            Set objWord = New Word.Application
            Set wDoc = objWord.Documents.Open(nomefiletab)

            ' cancella il pie' di pagina vecchio
            objWord.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
            objWord.Selection.ParagraphFormat.Alignment = wdAlignParagraphRight
            objWord.Selection.Delete Unit:=wdCharacter, Count:=1
            objWord.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
            objWord.Selection.EndKey Unit:=wdLine, Extend:=wdExtend
            objWord.Selection.Delete Unit:=wdCharacter, Count:=1
            objWord.ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
   
            ' aggiunge il pie' di pagina nuovo
            objWord.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
            objWord.Selection.ParagraphFormat.Alignment = wdAlignParagraphRight
            objWord.Selection.Font.Name = "Courier New"
            objWord.Selection.Font.Size = 7
            objWord.Selection.Font.Bold = True
            objWord.Selection.TypeText Text:=piepag
            objWord.ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
   
'            objWord.ActiveDocument.ActiveWindow.Activate
            objWord.Application.WindowState = wdWindowStateMinimize
            wDoc.Activate
 
            objWord.Visible = True
           
            'objWord.ActiveDocument.PrintPreview
       
            ' stampa il documento
            wDoc.PrintOut
 
            wDoc.Close
            objWord.Quit SaveChanges:=wdDoNotSaveChanges
           
            Set objWord = Nothing
            Set wDoc = Nothing
           
    Next nco
    S2OK.Visible = True
   
endif


Ebbene se vado in anteprima di stampa ('objWord.ActiveDocument.PrintPreview) funziona tutto, se lascio la stampa printout mi stampa solo la prima pagina del documento !!!

Non so proprio come risolvere.

Qualcuno puo' aiutarmi ?

Grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Sponsor
 

Re: [vba access 2003]: printout stampa solo la prima pagina

Postdi Flash30005 » 15/02/13 00:02

Se conosci il numero di pagine (esempio 10) potresti usare il comando
Codice: Seleziona tutto
wDoc.PrintOut from:=1, to:=10

Se non lo conosci
è sufficiente creare prima una variabile
Np = Worksheets.count
quindi avrai
Codice: Seleziona tutto
[code]wDoc.PrintOut from:=1, to:=Np[/code]

Se vuoi stamapre dalla pagina 5 alla 7
Codice: Seleziona tutto
wDoc.PrintOut from:=5, to:=7


Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: [vba access 2003]: printout stampa solo la prima pagina

Postdi karug64 » 15/02/13 00:14

Flash30005 ha scritto:Se conosci il numero di pagine (esempio 10) potresti usare il comando
Codice: Seleziona tutto
wDoc.PrintOut from:=1, to:=10



Ciao.
Mi da questo errore:

13: tipo non corrispondente

grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: [vba access 2003]: printout stampa solo la prima pagina

Postdi Anthony47 » 15/02/13 00:28

Secondo me smette di stampare perche' chiudi il documento.
Prova a modificare
Codice: Seleziona tutto
            ' stampa il documento
            wDoc.PrintOut Background:=False    '<<< Modificata

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19231
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [vba access 2003]: printout stampa solo la prima pagina

Postdi karug64 » 15/02/13 22:40

Anthony47 ha scritto:Secondo me smette di stampare perche' chiudi il documento.
Prova a modificare
Codice: Seleziona tutto
            ' stampa il documento
            wDoc.PrintOut Background:=False    '<<< Modificata

Ciao


Ok. Cosi' funziona.

Se puo' interessare funziona anche cosi':

Codice: Seleziona tutto
wdoc.PrintOut Range:=wdPrintAllDocument


Grazie e alla prossima.
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22


Torna a Applicazioni Office Windows


Topic correlati a "[vba access 2003]: printout stampa solo la prima pagina":


Chi c’è in linea

Visitano il forum: Nessuno e 19 ospiti