Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Come modificare, da codice, la stampante usata nei report?

601 views
Skip to first unread message

RobertoA

unread,
Aug 9, 2011, 10:17:14 AM8/9/11
to
Su alcuni report ho definito una stampante specifica, su altri la stampante
predefinita di sistema
Questa impostazione mi crea problemi quando installo la procedura su altri
computer che non dispongono delle stesse stampanti presenti sul pc di
sviluppo
Vorrei impostare su tutti i report la stampante predefinita di sistema
Senza toccare le altre impostazioni (portrait/landscape, formato foglio,
ecc..) ed usando solo codice vba, come posso modificare tutti i report in
modo che usino la stampante predefinita di sistema?
Ciao e grazie
RobertoA

Karl Donaubauer

unread,
Aug 9, 2011, 12:21:55 PM8/9/11
to

Dipende dalla versione di Access che non hai rivelato.
Di solito da AX si usa l'oggetto Printer. Vedi:

Cambiare la stampante o le impostazioni stampante/pagina
http://www.donkarl.com/it?FAQ5.1

--
Ciao
Karl
*********
Access FAQ: http://www.donkarl.com/it


RobertoA

unread,
Aug 9, 2011, 2:00:56 PM8/9/11
to

"Karl Donaubauer" <NoS...@donkarl.com> ha scritto nel messaggio
news:9ad54q...@mid.individual.net...

Grazie per la risposta
Uso Access 2003
Ma dagli esempi si vede come cambiare la stampante del report corrente
Io dovrei ciclare fra tutti i report e cambiarci la stampante predefinita,
impostazione che dovrebbe rimanere permanente
Ciao e grazie
RobertoA

Karl Donaubauer

unread,
Aug 9, 2011, 2:02:47 PM8/9/11
to
RobertoA wrote:
> "Karl Donaubauer ha scritto:
>> ...

>> Cambiare la stampante o le impostazioni stampante/pagina
>> http://www.donkarl.com/it?FAQ5.1
> ...

> Uso Access 2003
> Ma dagli esempi si vede come cambiare la stampante del report corrente
> Io dovrei ciclare fra tutti i report e cambiarci la stampante
> predefinita, impostazione che dovrebbe rimanere permanente

Sì, e cosa esattamente non ti è chiaro?
Anche visto che dà 1,5 anno lavori alla problematica...
http://groups.google.com/group/it.comp.appl.access/browse_frm/thread/76a7a541e4f5dd29

RobertoA

unread,
Aug 10, 2011, 3:03:50 AM8/10/11
to

"Karl Donaubauer" <NoS...@donkarl.com> ha scritto nel messaggio
news:9adb1t...@mid.individual.net...

Non mi e' chiaro, ora come allora, il perche' i report non mi 'tengono' le
informazioni
Se lancio il codice, sembra filare tutto liscio
Quando vado ad aprire i report in modalita' struttura e vado a verificare la
stampante utilizzata, nei report che usavano una stampante diversa dalla
predefinita c'e' ancora quella
Non dovrei vedere su titti i report 'predefinita' come stampante?
Ciao e grazie
RobertoA


Pablitomf

unread,
Aug 10, 2011, 3:23:00 AM8/10/11
to
> Non mi e' chiaro, ora come allora, il perche' i report non mi 'tengono' le
> informazioni
> Se lancio il codice, sembra filare tutto liscio
> Quando vado ad aprire i report in modalita' struttura e vado a verificare la
> stampante utilizzata, nei report che usavano una stampante diversa dalla
> predefinita c'e' ancora quella
> Non dovrei vedere su titti i report 'predefinita' come stampante?

No!
Il codice che Karl ti ha girato serve per variare "al volo" e solo in quel
momento la stampante su cui stampare... diversamente devi andare nella struttura
del singolo report, gestione pagina, togliere la stampante "specifica"
(lasciando quindi a quel punto quella predefinita) e salvare il report. In
questo modo hai il risultato che chiedi, che diversamente non otterresti.

--
--------------------------------
Pablitomf

Napoli sempre nel "Q"uore!

RobertoA

unread,
Aug 10, 2011, 4:33:02 AM8/10/11
to
"Pablitomf" <pabl...@hotmail.it> ha scritto nel messaggio
news:201108100...@mynewsgate.net...
> --------------------------------
> Pablitomf
> Napoli sempre nel "Q"uore!


Ho visto che col codice consigliato da Karl la stampante viene cambiata 'al
volo'
Quello che vorrei fare e' cambiare in modo permanente la stampante su ogni
report, portarla da 'stapante specifica' a 'stampante di default'
Sto cercando di usare questo codice
-----------
For Each objAcc In Application.CurrentProject.AllReports
strReport = objAcc.Name
DoCmd.OpenReport strReport, acViewDesign, acHidden
Reports(strReport).UseDefaultPrinter = True
RunCommand acCmdSave
DoCmd.Close acReport, strReport, acSaveYes
Next objAcc
------------
che anche se gira correttamente, non sembra funzionare come desiderato, nel
senso che se entro in modalita' struttura su un report che prima aveva una
stampante specifica, me lo ritrovo con la stessa stampante specifica di
prima
E quindi sembra che quel Reports(strReport).UseDefaultPrinter = True non
venga memorizzato
E non sto parlando su un mde ma sull'mdb che ho aperto per lavorarci, mi
piazzo sulla sub che avvia il codice sopra, premo F8 e seguo passo passo le
istruzione eseguite, con visualizzazione del nome report lavorato
La domanda e': perche' non viene salvata la modifica alla stampante?
Ciao e grazie
RobertoA


Pablitomf

unread,
Aug 10, 2011, 5:31:47 AM8/10/11
to
> Sto cercando di usare questo codice
> -----------
> For Each objAcc In Application.CurrentProject.AllReports
> strReport = objAcc.Name
> DoCmd.OpenReport strReport, acViewDesign, acHidden
> Reports(strReport).UseDefaultPrinter = True


questa RIGA non esiste!!!!

> RunCommand acCmdSave

cancellala...


> DoCmd.Close acReport, strReport, acSaveYes
> Next objAcc
> ------------

Adesso dovrebbe essere OK.

--

0 new messages